summaryrefslogtreecommitdiff
path: root/erts
diff options
context:
space:
mode:
authorSverker Eriksson <sverker@erlang.org>2022-10-04 15:41:43 +0200
committerSverker Eriksson <sverker@erlang.org>2022-10-04 16:36:27 +0200
commit51331bd2f85a8ab464fc5bd6020bd7900f4f2942 (patch)
tree57fc09f530217fcd3f668b2a55aed678081f907f /erts
parentc11b0d1d7b2a9ed87e2bc501ab2662b456d6ab2d (diff)
downloaderlang-51331bd2f85a8ab464fc5bd6020bd7900f4f2942.tar.gz
erts: Improve node leak check in end_per_testcase
Don't lose original failure reason, instead amend "Leaked connections".
Diffstat (limited to 'erts')
-rw-r--r--erts/emulator/test/alloc_SUITE.erl7
-rw-r--r--erts/emulator/test/bif_SUITE.erl9
-rw-r--r--erts/emulator/test/dirty_bif_SUITE.erl9
-rw-r--r--erts/emulator/test/distribution_SUITE.erl4
-rw-r--r--erts/emulator/test/dump_SUITE.erl9
-rw-r--r--erts/emulator/test/efile_SUITE.erl9
-rw-r--r--erts/emulator/test/erl_link_SUITE.erl9
-rw-r--r--erts/emulator/test/erts_debug_SUITE.erl9
-rw-r--r--erts/emulator/test/erts_test_utils.erl21
-rw-r--r--erts/emulator/test/exception_SUITE.erl9
-rw-r--r--erts/emulator/test/float_SUITE.erl9
-rw-r--r--erts/emulator/test/fun_SUITE.erl9
-rw-r--r--erts/emulator/test/hash_SUITE.erl9
-rw-r--r--erts/emulator/test/hash_property_test_SUITE.erl9
-rw-r--r--erts/emulator/test/list_bif_SUITE.erl9
-rw-r--r--erts/emulator/test/lttng_SUITE.erl9
-rw-r--r--erts/emulator/test/map_SUITE.erl10
-rw-r--r--erts/emulator/test/match_spec_SUITE.erl9
-rw-r--r--erts/emulator/test/message_queue_data_SUITE.erl9
-rw-r--r--erts/emulator/test/monitor_SUITE.erl9
-rw-r--r--erts/emulator/test/node_container_SUITE.erl7
-rw-r--r--erts/emulator/test/port_SUITE.erl9
-rw-r--r--erts/emulator/test/process_SUITE.erl7
-rw-r--r--erts/emulator/test/ref_SUITE.erl7
-rw-r--r--erts/emulator/test/scheduler_SUITE.erl7
-rw-r--r--erts/emulator/test/signal_SUITE.erl9
-rw-r--r--erts/emulator/test/smoke_test_SUITE.erl7
-rw-r--r--erts/emulator/test/system_info_SUITE.erl9
-rw-r--r--erts/emulator/test/time_SUITE.erl9
-rw-r--r--erts/emulator/test/timer_bif_SUITE.erl9
-rw-r--r--erts/emulator/test/trace_SUITE.erl7
-rw-r--r--erts/emulator/test/unique_SUITE.erl9
32 files changed, 75 insertions, 207 deletions
diff --git a/erts/emulator/test/alloc_SUITE.erl b/erts/emulator/test/alloc_SUITE.erl
index 2b96939858..3f128717b2 100644
--- a/erts/emulator/test/alloc_SUITE.erl
+++ b/erts/emulator/test/alloc_SUITE.erl
@@ -66,12 +66,7 @@ init_per_testcase(Case, Config) when is_list(Config) ->
[{testcase, Case}|Config].
end_per_testcase(_Case, Config) when is_list(Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%
diff --git a/erts/emulator/test/bif_SUITE.erl b/erts/emulator/test/bif_SUITE.erl
index a8065bd292..1b38fee8e1 100644
--- a/erts/emulator/test/bif_SUITE.erl
+++ b/erts/emulator/test/bif_SUITE.erl
@@ -72,13 +72,8 @@ init_per_testcase(shadow_comments, Config) when is_list(Config) ->
init_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
Config.
-end_per_testcase(_Func, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Func, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% erl_bif_types comes from dialyzer which some test runs skip building, so
%% we'll skip the tests that use it as the result shouldn't vary based on
diff --git a/erts/emulator/test/dirty_bif_SUITE.erl b/erts/emulator/test/dirty_bif_SUITE.erl
index 8669e6a746..efb31f8471 100644
--- a/erts/emulator/test/dirty_bif_SUITE.erl
+++ b/erts/emulator/test/dirty_bif_SUITE.erl
@@ -82,13 +82,8 @@ end_per_suite(_Config) ->
init_per_testcase(Case, Config) ->
[{testcase, Case} | Config].
-end_per_testcase(_Case, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Case, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
dirty_bif(Config) when is_list(Config) ->
dirty_cpu = erts_debug:dirty_cpu(scheduler,type),
diff --git a/erts/emulator/test/distribution_SUITE.erl b/erts/emulator/test/distribution_SUITE.erl
index d57942d138..ba422fd9df 100644
--- a/erts/emulator/test/distribution_SUITE.erl
+++ b/erts/emulator/test/distribution_SUITE.erl
@@ -164,9 +164,7 @@ end_per_testcase(_TestCase, Config) ->
case wait_until(fun() -> nodes(connected) == [] end, 10_000) of
ok -> ok;
timeout ->
- Nodes = nodes(connected),
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
+ erts_test_utils:ept_check_leaked_nodes(Config)
end.
%% Tests pinging a node in different ways.
diff --git a/erts/emulator/test/dump_SUITE.erl b/erts/emulator/test/dump_SUITE.erl
index 625800fdf6..d58984b88c 100644
--- a/erts/emulator/test/dump_SUITE.erl
+++ b/erts/emulator/test/dump_SUITE.erl
@@ -54,13 +54,8 @@ init_per_testcase(_, Config) ->
Config.
-end_per_testcase(_, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%%
%%% The test cases -------------------------------------------------------------
diff --git a/erts/emulator/test/efile_SUITE.erl b/erts/emulator/test/efile_SUITE.erl
index 98f76067bd..753c41cc1d 100644
--- a/erts/emulator/test/efile_SUITE.erl
+++ b/erts/emulator/test/efile_SUITE.erl
@@ -35,13 +35,8 @@ all() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%
%% Open as many files as possible. Do this several times and check
diff --git a/erts/emulator/test/erl_link_SUITE.erl b/erts/emulator/test/erl_link_SUITE.erl
index d8b9d37fc2..0e3829c275 100644
--- a/erts/emulator/test/erl_link_SUITE.erl
+++ b/erts/emulator/test/erl_link_SUITE.erl
@@ -91,13 +91,8 @@ init_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
end,
Config.
-end_per_testcase(_Func, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Func, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
init_per_suite(Config) ->
Config.
diff --git a/erts/emulator/test/erts_debug_SUITE.erl b/erts/emulator/test/erts_debug_SUITE.erl
index 01221de8b5..2149eac41b 100644
--- a/erts/emulator/test/erts_debug_SUITE.erl
+++ b/erts/emulator/test/erts_debug_SUITE.erl
@@ -46,13 +46,8 @@ groups() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
interpreter_size_bench(_Config) ->
Size = erts_debug:interpreter_size(),
diff --git a/erts/emulator/test/erts_test_utils.erl b/erts/emulator/test/erts_test_utils.erl
index 158b78c2c1..4d38f11cd5 100644
--- a/erts/emulator/test/erts_test_utils.erl
+++ b/erts/emulator/test/erts_test_utils.erl
@@ -29,7 +29,8 @@
mk_ext_port/2,
mk_ext_ref/2,
available_internal_state/1,
- check_node_dist/0, check_node_dist/1, check_node_dist/3]).
+ check_node_dist/0, check_node_dist/1, check_node_dist/3,
+ ept_check_leaked_nodes/1]).
@@ -292,3 +293,21 @@ check_refc(ThisNodeName,ThisCreation,Table,EntryList) when is_list(EntryList) ->
end,
EntryList),
ok.
+
+%% To be called by end_per_testcase
+%% to check and kill leaked node connections.
+ept_check_leaked_nodes(Config) ->
+ case nodes(connected) of
+ [] -> ok;
+ Nodes ->
+ [net_kernel:disconnect(N) || N <- Nodes],
+ Leaked = {"Leaked connections", Nodes},
+ Fail = case proplists:get_value(tc_status, Config) of
+ ok -> Leaked;
+ {failed, Reason} ->
+ [Reason, {end_per_testcase, Leaked}];
+ {skipped, _}=Skipped ->
+ [Skipped, {end_per_testcase, Leaked}]
+ end,
+ {fail, Fail}
+ end.
diff --git a/erts/emulator/test/exception_SUITE.erl b/erts/emulator/test/exception_SUITE.erl
index 5cce5d1491..ea76a473f2 100644
--- a/erts/emulator/test/exception_SUITE.erl
+++ b/erts/emulator/test/exception_SUITE.erl
@@ -54,13 +54,8 @@ all() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
-define(try_match(E),
catch ?MODULE:bar(),
diff --git a/erts/emulator/test/float_SUITE.erl b/erts/emulator/test/float_SUITE.erl
index 3c1057671f..9784f5c90b 100644
--- a/erts/emulator/test/float_SUITE.erl
+++ b/erts/emulator/test/float_SUITE.erl
@@ -46,13 +46,8 @@ groups() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%
%% OTP-7178, list_to_float on very small numbers should give 0.0
diff --git a/erts/emulator/test/fun_SUITE.erl b/erts/emulator/test/fun_SUITE.erl
index 3c9d81a9fb..3fea66eadc 100644
--- a/erts/emulator/test/fun_SUITE.erl
+++ b/erts/emulator/test/fun_SUITE.erl
@@ -49,13 +49,8 @@ all() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% Test that the correct EXIT code is returned for all types of bad funs.
diff --git a/erts/emulator/test/hash_SUITE.erl b/erts/emulator/test/hash_SUITE.erl
index 8f24e17417..c8034c3835 100644
--- a/erts/emulator/test/hash_SUITE.erl
+++ b/erts/emulator/test/hash_SUITE.erl
@@ -172,13 +172,8 @@ end_per_group(_, Config) ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% Tests basic functionality of erlang:phash and that the
%% hashes has not changed (neither hash nor phash)
diff --git a/erts/emulator/test/hash_property_test_SUITE.erl b/erts/emulator/test/hash_property_test_SUITE.erl
index c25e9ad677..2c57850e3c 100644
--- a/erts/emulator/test/hash_property_test_SUITE.erl
+++ b/erts/emulator/test/hash_property_test_SUITE.erl
@@ -73,13 +73,8 @@ end_per_group(_, Config) ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
test_phash2_no_diff(Config) when is_list(Config) ->
true = ct_property_test:quickcheck(
diff --git a/erts/emulator/test/list_bif_SUITE.erl b/erts/emulator/test/list_bif_SUITE.erl
index 88709c92ec..b6941bfa43 100644
--- a/erts/emulator/test/list_bif_SUITE.erl
+++ b/erts/emulator/test/list_bif_SUITE.erl
@@ -40,13 +40,8 @@ all() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% Tests list_to_integer and string:to_integer
t_list_to_integer(Config) when is_list(Config) ->
diff --git a/erts/emulator/test/lttng_SUITE.erl b/erts/emulator/test/lttng_SUITE.erl
index b76859fe6c..1a0891184f 100644
--- a/erts/emulator/test/lttng_SUITE.erl
+++ b/erts/emulator/test/lttng_SUITE.erl
@@ -71,15 +71,10 @@ init_per_testcase(Case, Config) ->
ok = ensure_lttng_started(Name, Config),
[{session, Name}|Config].
-end_per_testcase(Case, _Config) ->
+end_per_testcase(Case, Config) ->
Name = atom_to_list(Case),
ok = ensure_lttng_stopped(Name),
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% Not tested yet
%% org_erlang_otp:driver_process_exit
diff --git a/erts/emulator/test/map_SUITE.erl b/erts/emulator/test/map_SUITE.erl
index 1094ddf0e9..72f1c1174c 100644
--- a/erts/emulator/test/map_SUITE.erl
+++ b/erts/emulator/test/map_SUITE.erl
@@ -199,13 +199,9 @@ end_per_suite(Config) ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
+
%% tests
diff --git a/erts/emulator/test/match_spec_SUITE.erl b/erts/emulator/test/match_spec_SUITE.erl
index 18aca7c2c1..eadddfe312 100644
--- a/erts/emulator/test/match_spec_SUITE.erl
+++ b/erts/emulator/test/match_spec_SUITE.erl
@@ -60,13 +60,8 @@ all() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
test_1(Config) when is_list(Config) ->
tr(fun() -> ?MODULE:f1(a) end,
diff --git a/erts/emulator/test/message_queue_data_SUITE.erl b/erts/emulator/test/message_queue_data_SUITE.erl
index effd4c1370..71921a4eda 100644
--- a/erts/emulator/test/message_queue_data_SUITE.erl
+++ b/erts/emulator/test/message_queue_data_SUITE.erl
@@ -43,13 +43,8 @@ end_per_suite(_Config) ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
all() ->
[basic, process_info_messages, total_heap_size, change_to_off_heap,
diff --git a/erts/emulator/test/monitor_SUITE.erl b/erts/emulator/test/monitor_SUITE.erl
index c46c4b149f..e17f8db920 100644
--- a/erts/emulator/test/monitor_SUITE.erl
+++ b/erts/emulator/test/monitor_SUITE.erl
@@ -54,13 +54,8 @@ groups() ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% A monitors B, B kills A and then exits (yielded core dump)
case_1(Config) when is_list(Config) ->
diff --git a/erts/emulator/test/node_container_SUITE.erl b/erts/emulator/test/node_container_SUITE.erl
index b3e954f31a..97ee9adcc0 100644
--- a/erts/emulator/test/node_container_SUITE.erl
+++ b/erts/emulator/test/node_container_SUITE.erl
@@ -81,12 +81,7 @@ init_per_testcase(_Case, Config) when is_list(Config) ->
Config.
end_per_testcase(_Case, Config) when is_list(Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%%
%%% The test cases -------------------------------------------------------------
diff --git a/erts/emulator/test/port_SUITE.erl b/erts/emulator/test/port_SUITE.erl
index f44e19acec..bbfb6b52ce 100644
--- a/erts/emulator/test/port_SUITE.erl
+++ b/erts/emulator/test/port_SUITE.erl
@@ -226,13 +226,8 @@ init_per_testcase(Case, Config) when Case =:= mon_port_driver_die;
init_per_testcase(Case, Config) ->
[{testcase, Case} |Config].
-end_per_testcase(_Case, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Case, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
init_per_suite(Config) when is_list(Config) ->
ignore_cores:init(Config).
diff --git a/erts/emulator/test/process_SUITE.erl b/erts/emulator/test/process_SUITE.erl
index 38954ef7a9..ee9834b44f 100644
--- a/erts/emulator/test/process_SUITE.erl
+++ b/erts/emulator/test/process_SUITE.erl
@@ -221,12 +221,7 @@ end_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
#{size => 0,
kill => true,
error_logger => true}),
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
fun_spawn(Fun) ->
spawn_link(erlang, apply, [Fun, []]).
diff --git a/erts/emulator/test/ref_SUITE.erl b/erts/emulator/test/ref_SUITE.erl
index 2c11d5ac34..597ac51c12 100644
--- a/erts/emulator/test/ref_SUITE.erl
+++ b/erts/emulator/test/ref_SUITE.erl
@@ -39,12 +39,7 @@ init_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
[{testcase, Func}|Config].
end_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
all() ->
[wrap_1, compare_list, compare_ets, internal_size, external_size].
diff --git a/erts/emulator/test/scheduler_SUITE.erl b/erts/emulator/test/scheduler_SUITE.erl
index 4f179c9c07..65a1c1f925 100644
--- a/erts/emulator/test/scheduler_SUITE.erl
+++ b/erts/emulator/test/scheduler_SUITE.erl
@@ -123,12 +123,7 @@ init_per_tc(Case, Config) ->
[{testcase, Case}, {ok_res, OkRes} |Config].
end_per_testcase(_Case, Config) when is_list(Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
-define(ERTS_RUNQ_CHECK_BALANCE_REDS_PER_SCHED, (2000*2000)).
-define(DEFAULT_TEST_REDS_PER_SCHED, 200000000).
diff --git a/erts/emulator/test/signal_SUITE.erl b/erts/emulator/test/signal_SUITE.erl
index 10b7f85201..990f02790c 100644
--- a/erts/emulator/test/signal_SUITE.erl
+++ b/erts/emulator/test/signal_SUITE.erl
@@ -66,13 +66,8 @@
init_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
[{testcase, Func}|Config].
-end_per_testcase(_Func, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Func, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
init_per_suite(Config) ->
Config.
diff --git a/erts/emulator/test/smoke_test_SUITE.erl b/erts/emulator/test/smoke_test_SUITE.erl
index 26cd633049..b59390a854 100644
--- a/erts/emulator/test/smoke_test_SUITE.erl
+++ b/erts/emulator/test/smoke_test_SUITE.erl
@@ -49,12 +49,7 @@ init_per_tc(Case, Config) ->
[{testcase, Case} | Config].
end_per_testcase(_Case, Config) when is_list(Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%%
%%% The test cases -------------------------------------------------------------
diff --git a/erts/emulator/test/system_info_SUITE.erl b/erts/emulator/test/system_info_SUITE.erl
index 6bec1ffaf9..76efe053f5 100644
--- a/erts/emulator/test/system_info_SUITE.erl
+++ b/erts/emulator/test/system_info_SUITE.erl
@@ -62,13 +62,8 @@ init_per_testcase(_, Config) ->
end_per_testcase(procs_bug, Config) ->
procs_bug(end_per_testcase, Config);
-end_per_testcase(_, _) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%%
%%% The test cases -------------------------------------------------------------
diff --git a/erts/emulator/test/time_SUITE.erl b/erts/emulator/test/time_SUITE.erl
index 3a0aebe9b9..ce3e796da5 100644
--- a/erts/emulator/test/time_SUITE.erl
+++ b/erts/emulator/test/time_SUITE.erl
@@ -70,13 +70,8 @@
init_per_testcase(Func, Config) when is_atom(Func), is_list(Config) ->
[{testcase, Func}|Config].
-end_per_testcase(_Func, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Func, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
suite() -> [{ct_hooks,[ts_install_cth]}].
diff --git a/erts/emulator/test/timer_bif_SUITE.erl b/erts/emulator/test/timer_bif_SUITE.erl
index bf22df8131..5866553b3c 100644
--- a/erts/emulator/test/timer_bif_SUITE.erl
+++ b/erts/emulator/test/timer_bif_SUITE.erl
@@ -47,13 +47,8 @@ init_per_testcase(_Case, Config) ->
end,
Config.
-end_per_testcase(_Case, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_Case, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
init_per_suite(Config) ->
erts_debug:set_internal_state(available_internal_state, true),
diff --git a/erts/emulator/test/trace_SUITE.erl b/erts/emulator/test/trace_SUITE.erl
index ca54586352..37f47cff30 100644
--- a/erts/emulator/test/trace_SUITE.erl
+++ b/erts/emulator/test/trace_SUITE.erl
@@ -74,12 +74,7 @@ end_per_testcase(_Case, Config) ->
unlink(Receiver),
exit(Receiver, die),
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+ erts_test_utils:ept_check_leaked_nodes(Config).
%% No longer testing anything, just reporting whether cpu_timestamp
%% is enabled or not.
diff --git a/erts/emulator/test/unique_SUITE.erl b/erts/emulator/test/unique_SUITE.erl
index 1ff94690ef..d041ed5632 100644
--- a/erts/emulator/test/unique_SUITE.erl
+++ b/erts/emulator/test/unique_SUITE.erl
@@ -50,13 +50,8 @@ end_per_suite(_Config) ->
init_per_testcase(_TestCase, Config) ->
Config.
-end_per_testcase(_TestCase, _Config) ->
- case nodes(connected) of
- [] -> ok;
- Nodes ->
- [net_kernel:disconnect(N) || N <- Nodes],
- {fail, {"Leaked connections", Nodes}}
- end.
+end_per_testcase(_TestCase, Config) ->
+ erts_test_utils:ept_check_leaked_nodes(Config).
%%
%%