This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
62
unikernel/duniverse/mirage-tcpip/test/test.ml
Normal file
62
unikernel/duniverse/mirage-tcpip/test/test.ml
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
(*
|
||||
* Copyright (c) 2013 Thomas Gazagnaire <thomas@gazagnaire.org>
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
* copyright notice and this permission notice appear in all copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*)
|
||||
|
||||
let suite = [
|
||||
"checksums" , Test_checksums.suite ;
|
||||
"ipv4" , Test_ipv4.suite ;
|
||||
"ipv6" , Test_ipv6.suite ;
|
||||
"icmpv4" , Test_icmpv4.suite ;
|
||||
"udp" , Test_udp.suite ;
|
||||
"tcp_options" , Test_tcp_options.suite ;
|
||||
"mtu+tcp" , Test_mtus.suite ;
|
||||
"rfc5961" , Test_rfc5961.suite ;
|
||||
"socket" , Test_socket.suite ;
|
||||
"connect" , Test_connect.suite ;
|
||||
"connect_ipv6" , Test_connect_ipv6.suite ;
|
||||
"deadlock" , Test_deadlock.suite ;
|
||||
"iperf" , Test_iperf.suite ;
|
||||
"iperf_ipv6" , Test_iperf_ipv6.suite ;
|
||||
"keepalive" , Test_keepalive.suite ;
|
||||
"simultaneous_close", Test_simulatenous_close.suite
|
||||
]
|
||||
|
||||
let run test () =
|
||||
Lwt_main.run (test ())
|
||||
|
||||
let () =
|
||||
Printexc.record_backtrace true;
|
||||
Mirage_crypto_rng_unix.use_default ();
|
||||
(* enable logging to stdout for all modules *)
|
||||
Logs.set_reporter (Logs_fmt.reporter ());
|
||||
Logs.set_level ~all:true (Some Logs.Debug);
|
||||
let suite = List.map (fun (n, s) ->
|
||||
n, List.map (fun (d, s, f) -> d, s, run f) s
|
||||
) suite
|
||||
in
|
||||
let filter ~name ~index =
|
||||
(* Lwt_bytes (as of 5.5.0) on Windows doesn't support UDP. *)
|
||||
let skip = [
|
||||
3 (* no_leak_fds_in_udpv4 *);
|
||||
5 (* no_leak_fds_in_udpv6 *);
|
||||
7 (* no_leak_fds_in_udpv4v6 *);
|
||||
9 (* no_leak_fds_in_udpv4v6_2 *);
|
||||
11 (* no_leak_fds_in_udpv4v6_3 *);
|
||||
13 (* no_leak_fds_in_udpv4v6_4 *);
|
||||
15 (* no_leak_fds_in_udpv4v6_5 *);
|
||||
] in
|
||||
if Sys.win32 && name = "socket" && List.mem index skip then `Skip else `Run
|
||||
in
|
||||
Alcotest.run "tcpip" suite ~filter
|
||||
Loading…
Add table
Add a link
Reference in a new issue