File 5789-kernel-net-test-Tweaked-for-FreeBSD.patch of Package erlang
From 479f29f1a6de953d150463b2184509fa061a549d Mon Sep 17 00:00:00 2001
From: Micael Karlberg <bmk@erlang.org>
Date: Wed, 17 Apr 2024 11:33:51 +0200
Subject: [PATCH 09/18] [kernel|net|test] Tweaked for FreeBSD
---
lib/kernel/test/net_SUITE.erl | 25 ++++++++++++++++++++++---
1 file changed, 22 insertions(+), 3 deletions(-)
diff --git a/lib/kernel/test/net_SUITE.erl b/lib/kernel/test/net_SUITE.erl
index fcc6e6dc98..2f339b4900 100644
--- a/lib/kernel/test/net_SUITE.erl
+++ b/lib/kernel/test/net_SUITE.erl
@@ -24,8 +24,12 @@
%% not even reside here).
%%
+%% Starting a VM to run tests with ct:
+%% ( cd $LOCAL_TESTS/27/kernel_test/ && $ERL_TOP/bin/erl -sname kernel-27-tester -pa $LOCAL_TESTS/27/test_server )
+%%
%% Run the entire test suite:
%% ts:run(emulator, net_SUITE, [batch]).
+%% S = fun(SUITE) -> ct:run_test([{suite, SUITE}]) end, S(net_SUITE).
%%
%% Run a specific group:
%% ts:run(emulator, net_SUITE, {group, foo}, [batch]).
@@ -414,7 +418,7 @@ api_b_getservbyport(suite) ->
api_b_getservbyport(doc) ->
[];
api_b_getservbyport(_Config) when is_list(_Config) ->
- ?TT(?SECS(5)),
+ ?TT(?SECS(30)),
tc_try(?FUNCTION_NAME,
fun() ->
ok = api_b_getservbyport()
@@ -424,9 +428,13 @@ api_b_getservbyport(_Config) when is_list(_Config) ->
api_b_getservbyport() ->
?P("A couple of (expected) successes"),
{ok, "http"} = net:getservbyport(80),
- {ok, "http"} = net:getservbyport(80, any),
+ not_freebsd(fun() -> {ok, "http"} = net:getservbyport(80, any) end),
{ok, "http"} = net:getservbyport(80, tcp),
- not_on_windows(fun() -> {ok, "www"} = net:getservbyport(80, udp) end),
+ not_on_windows(fun() -> case net:getservbyport(80, udp) of
+ {ok, STR} when (STR =:= "http") orelse (STR =:= "WWW") -> ok;
+ {error, Reason} -> ?P("Unexpected failure: ~p", [Reason]), ?FAIL({80, udp, Reason})
+ end
+ end),
{ok, "snmp"} = net:getservbyport(161, udp),
not_on_windows(fun() -> {ok, "snmp"} = net:getservbyport(161, tcp) end),
not_on_windows(fun() -> {ok, "epmd"} = net:getservbyport(4369, tcp) end),
@@ -441,6 +449,17 @@ api_b_getservbyport() ->
ok.
+not_freebsd(F) ->
+ Cond = fun() -> case os:type() of
+ {unix, freebsd} ->
+ skip;
+ _ ->
+ run
+ end
+ end,
+ maybe_run(Cond, F).
+
+
not_on_windows(F) ->
Cond = fun() -> case os:type() of
{win32, nt} ->
--
2.35.3