mirror of
https://github.com/c-cube/moonpool.git
synced 2025-12-06 03:05:30 -05:00
test: add a test for the hash server+client
This commit is contained in:
parent
83ae0e7a4e
commit
004f5fc82b
4 changed files with 246 additions and 7 deletions
|
|
@ -1,3 +1,14 @@
|
||||||
(executables
|
(executables
|
||||||
(names echo_server echo_client hash_server hash_client)
|
(names echo_server echo_client hash_server hash_client)
|
||||||
(libraries moonpool moonpool-lwt lwt lwt.unix trace.core trace-tef))
|
(libraries moonpool moonpool-lwt lwt lwt.unix trace.core trace-tef))
|
||||||
|
|
||||||
|
(rule
|
||||||
|
(targets output_hash.txt)
|
||||||
|
(deps ./hash_server.exe ./hash_client.exe ./run_hash.sh)
|
||||||
|
(action
|
||||||
|
(with-stdout-to %{targets}
|
||||||
|
(run ./run_hash.sh -d ../../src --n-conn=2 -j=4 --ext ".ml"))))
|
||||||
|
|
||||||
|
(rule
|
||||||
|
(alias runtest)
|
||||||
|
(action (diff ./output_hash.expected ./output_hash.txt)))
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,15 @@ module M = Moonpool
|
||||||
module M_lwt = Moonpool_lwt
|
module M_lwt = Moonpool_lwt
|
||||||
module Trace = Trace_core
|
module Trace = Trace_core
|
||||||
|
|
||||||
|
module Str_tbl = Hashtbl.Make (struct
|
||||||
|
include String
|
||||||
|
|
||||||
|
let hash = Hashtbl.hash
|
||||||
|
end)
|
||||||
|
|
||||||
let ( let@ ) = ( @@ )
|
let ( let@ ) = ( @@ )
|
||||||
|
|
||||||
let main ~port ~runner ~dir ~n_conn () : unit Lwt.t =
|
let main ~port ~runner ~ext ~dir ~n_conn () : unit Lwt.t =
|
||||||
let@ _sp = Trace.with_span ~__FILE__ ~__LINE__ "main" in
|
let@ _sp = Trace.with_span ~__FILE__ ~__LINE__ "main" in
|
||||||
|
|
||||||
Printf.printf "hash dir=%S\n%!" dir;
|
Printf.printf "hash dir=%S\n%!" dir;
|
||||||
|
|
@ -15,21 +21,34 @@ let main ~port ~runner ~dir ~n_conn () : unit Lwt.t =
|
||||||
(* TODO: *)
|
(* TODO: *)
|
||||||
let run_task () : unit =
|
let run_task () : unit =
|
||||||
let _sp = Trace.enter_manual_toplevel_span ~__FILE__ ~__LINE__ "run-task" in
|
let _sp = Trace.enter_manual_toplevel_span ~__FILE__ ~__LINE__ "run-task" in
|
||||||
|
|
||||||
|
let seen = Str_tbl.create 16 in
|
||||||
|
|
||||||
M_lwt.TCP_client.with_connect_lwt addr @@ fun ic oc ->
|
M_lwt.TCP_client.with_connect_lwt addr @@ fun ic oc ->
|
||||||
let rec walk file : unit =
|
let rec walk file : unit =
|
||||||
if not (Sys.file_exists file) then
|
if not (Sys.file_exists file) then
|
||||||
()
|
()
|
||||||
else if Sys.is_regular_file file then (
|
else if Str_tbl.mem seen file then
|
||||||
M_lwt.run_in_lwt_and_await (fun () -> Lwt_io.write_line oc file);
|
()
|
||||||
let res = M_lwt.run_in_lwt_and_await (fun () -> Lwt_io.read_line ic) in
|
else if Sys.is_regular_file file then
|
||||||
Printf.printf "%s\n%!" res
|
if ext <> "" && Filename.extension file <> ext then
|
||||||
) else if Sys.is_directory file then (
|
()
|
||||||
|
else (
|
||||||
|
Str_tbl.add seen file ();
|
||||||
|
M_lwt.run_in_lwt_and_await (fun () -> Lwt_io.write_line oc file);
|
||||||
|
let res =
|
||||||
|
M_lwt.run_in_lwt_and_await (fun () -> Lwt_io.read_line ic)
|
||||||
|
in
|
||||||
|
Printf.printf "%s\n%!" res
|
||||||
|
)
|
||||||
|
else if Sys.is_directory file then (
|
||||||
let _sp =
|
let _sp =
|
||||||
Trace.enter_manual_sub_span ~parent:_sp ~__FILE__ ~__LINE__ "walk-dir"
|
Trace.enter_manual_sub_span ~parent:_sp ~__FILE__ ~__LINE__ "walk-dir"
|
||||||
~data:(fun () -> [ "d", `String file ])
|
~data:(fun () -> [ "d", `String file ])
|
||||||
in
|
in
|
||||||
|
|
||||||
Printf.printf "explore %S\n%!" file;
|
Printf.printf "explore %S\n%!" file;
|
||||||
|
Str_tbl.add seen file ();
|
||||||
let d = Sys.readdir file in
|
let d = Sys.readdir file in
|
||||||
Array.sort String.compare d;
|
Array.sort String.compare d;
|
||||||
Array.iter (fun sub -> walk (Filename.concat file sub)) d
|
Array.iter (fun sub -> walk (Filename.concat file sub)) d
|
||||||
|
|
@ -51,6 +70,7 @@ let () =
|
||||||
let port = ref 1234 in
|
let port = ref 1234 in
|
||||||
let j = ref 4 in
|
let j = ref 4 in
|
||||||
let n_conn = ref 100 in
|
let n_conn = ref 100 in
|
||||||
|
let ext = ref "" in
|
||||||
let dir = ref "." in
|
let dir = ref "." in
|
||||||
|
|
||||||
let opts =
|
let opts =
|
||||||
|
|
@ -59,6 +79,7 @@ let () =
|
||||||
"-j", Arg.Set_int j, " number of threads";
|
"-j", Arg.Set_int j, " number of threads";
|
||||||
"-d", Arg.Set_string dir, " directory to hash";
|
"-d", Arg.Set_string dir, " directory to hash";
|
||||||
"--n-conn", Arg.Set_int n_conn, " number of parallel connections";
|
"--n-conn", Arg.Set_int n_conn, " number of parallel connections";
|
||||||
|
"--ext", Arg.Set_string ext, " extension to filter files";
|
||||||
]
|
]
|
||||||
|> Arg.align
|
|> Arg.align
|
||||||
in
|
in
|
||||||
|
|
@ -66,4 +87,5 @@ let () =
|
||||||
|
|
||||||
let@ runner = M.Ws_pool.with_ ~name:"tpool" ~num_threads:!j () in
|
let@ runner = M.Ws_pool.with_ ~name:"tpool" ~num_threads:!j () in
|
||||||
Lwt_engine.set @@ new Lwt_engine.libev ();
|
Lwt_engine.set @@ new Lwt_engine.libev ();
|
||||||
Lwt_main.run @@ main ~runner ~port:!port ~dir:!dir ~n_conn:!n_conn ()
|
Lwt_main.run
|
||||||
|
@@ main ~runner ~port:!port ~ext:!ext ~dir:!dir ~n_conn:!n_conn ()
|
||||||
|
|
|
||||||
198
test/lwt/output_hash.expected
Normal file
198
test/lwt/output_hash.expected
Normal file
|
|
@ -0,0 +1,198 @@
|
||||||
|
run hash client -d ../../src --n-conn=2 -j=4 --ext .ml
|
||||||
|
listening on port 1234
|
||||||
|
|
||||||
|
|
||||||
|
connecting to port 1234
|
||||||
|
explore explore "../../src/core""../../src/core"
|
||||||
|
explore explore "../../src/cpp/.cpp.eobjs/byte"
|
||||||
|
explore "../../src"
|
||||||
|
explore "../../src"
|
||||||
|
explore "../../src/core/.merlin-conf"
|
||||||
|
explore "../../src/core/.merlin-conf"
|
||||||
|
explore "../../src/core/.moonpool.objs"
|
||||||
|
explore "../../src/core/.moonpool.objs"
|
||||||
|
explore "../../src/core/.moonpool.objs/byte"
|
||||||
|
explore "../../src/core/.moonpool.objs/byte"
|
||||||
|
explore "../../src/core/.moonpool.objs/native"
|
||||||
|
explore "../../src/core/.moonpool.objs/native"
|
||||||
|
explore "../../src/core/.moonpool.objs/public_cmi"
|
||||||
|
explore "../../src/core/.moonpool.objs/public_cmi"
|
||||||
|
explore "../../src/cpp"
|
||||||
|
explore "../../src/cpp"
|
||||||
|
explore "../../src/cpp/.cpp.eobjs"
|
||||||
|
explore "../../src/cpp/.cpp.eobjs"
|
||||||
|
explore "../../src/cpp/.cpp.eobjs/native"explore
|
||||||
|
explore "../../src/cpp/.merlin-conf"
|
||||||
|
explore "../../src/cpp/.merlin-conf"
|
||||||
|
explore "../../src/fib"
|
||||||
|
explore "../../src/fib"
|
||||||
|
explore "../../src/fib/.merlin-conf"
|
||||||
|
explore "../../src/fib/.merlin-conf"
|
||||||
|
explore "../../src/fib/.moonpool_fib.objs"
|
||||||
|
explore "../../src/fib/.moonpool_fib.objs"
|
||||||
|
explore "../../src/fib/.moonpool_fib.objs/byte"
|
||||||
|
explore "../../src/fib/.moonpool_fib.objs/byte"
|
||||||
|
explore "../../src/fib/.moonpool_fib.objs/native"explore "../../src/fib/.moonpool_fib.objs/native"
|
||||||
|
explore "../../src/forkjoin"
|
||||||
|
explore "../../src/forkjoin"
|
||||||
|
explore "../../src/forkjoin/.merlin-conf"
|
||||||
|
explore "../../src/forkjoin/.merlin-conf"
|
||||||
|
explore "../../src/forkjoin/.moonpool_forkjoin.objs"
|
||||||
|
explore "../../src/forkjoin/.moonpool_forkjoin.objs"
|
||||||
|
explore "../../src/forkjoin/.moonpool_forkjoin.objs/byte"
|
||||||
|
explore "../../src/forkjoin/.moonpool_forkjoin.objs/byte"
|
||||||
|
explore "../../src/lwt"
|
||||||
|
explore "../../src/lwt"
|
||||||
|
explore "../../src/lwt/.merlin-conf"
|
||||||
|
explore "../../src/lwt/.merlin-conf"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs/byte"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs/byte"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs/native"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs/native"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs/public_cmi"
|
||||||
|
explore "../../src/lwt/.moonpool_lwt.objs/public_cmi"
|
||||||
|
explore "../../src/private"
|
||||||
|
explore "../../src/private"
|
||||||
|
explore "../../src/private/.merlin-conf"
|
||||||
|
explore "../../src/private/.merlin-conf"
|
||||||
|
explore "../../src/private/.moonpool_private.objs"
|
||||||
|
explore "../../src/private/.moonpool_private.objs"
|
||||||
|
explore "../../src/private/.moonpool_private.objs/byte"
|
||||||
|
explore "../../src/private/.moonpool_private.objs/byte"
|
||||||
|
explore "../../src/private/.moonpool_private.objs/native"
|
||||||
|
explore "../../src/private/.moonpool_private.objs/native"
|
||||||
|
hash dir="../../src"
|
||||||
|
../../src/core/background_thread.ml: 6d5c624dac304cf82ffa6f738516ec9a97aba297
|
||||||
|
../../src/core/background_thread.ml: 6d5c624dac304cf82ffa6f738516ec9a97aba297
|
||||||
|
../../src/core/background_thread.pp.ml: 6d5c624dac304cf82ffa6f738516ec9a97aba297
|
||||||
|
../../src/core/background_thread.pp.ml: 6d5c624dac304cf82ffa6f738516ec9a97aba297
|
||||||
|
../../src/core/bb_queue.ml: 6365ccec9683cfbf28e3385bab8549774e1eec69
|
||||||
|
../../src/core/bb_queue.ml: 6365ccec9683cfbf28e3385bab8549774e1eec69
|
||||||
|
../../src/core/bb_queue.pp.ml: 6365ccec9683cfbf28e3385bab8549774e1eec69
|
||||||
|
../../src/core/bb_queue.pp.ml: 6365ccec9683cfbf28e3385bab8549774e1eec69
|
||||||
|
../../src/core/bounded_queue.ml: 376746b4041b087e7b1c27f7eec119d699551e48
|
||||||
|
../../src/core/bounded_queue.ml: 376746b4041b087e7b1c27f7eec119d699551e48
|
||||||
|
../../src/core/bounded_queue.pp.ml: 376746b4041b087e7b1c27f7eec119d699551e48
|
||||||
|
../../src/core/bounded_queue.pp.ml: 376746b4041b087e7b1c27f7eec119d699551e48
|
||||||
|
../../src/core/chan.ml: 5fabf963a1515f044573b49ad66cc808f814205f
|
||||||
|
../../src/core/chan.ml: 5fabf963a1515f044573b49ad66cc808f814205f
|
||||||
|
../../src/core/chan.pp.ml: 8e3d9ff618d21b9e1bf95878a2a821533aaf53a7
|
||||||
|
../../src/core/chan.pp.ml: 8e3d9ff618d21b9e1bf95878a2a821533aaf53a7
|
||||||
|
../../src/core/domain_pool_.ml: 2dad9ca7afee20fc204d07c131fbd9925d0991fd
|
||||||
|
../../src/core/domain_pool_.ml: 2dad9ca7afee20fc204d07c131fbd9925d0991fd
|
||||||
|
../../src/core/domain_pool_.pp.ml: 2dad9ca7afee20fc204d07c131fbd9925d0991fd
|
||||||
|
../../src/core/domain_pool_.pp.ml: 2dad9ca7afee20fc204d07c131fbd9925d0991fd
|
||||||
|
../../src/core/exn_bt.ml: e5cd6bea505fdb562044427f570782048bbcfb77
|
||||||
|
../../src/core/exn_bt.ml: e5cd6bea505fdb562044427f570782048bbcfb77
|
||||||
|
../../src/core/exn_bt.pp.ml: e5cd6bea505fdb562044427f570782048bbcfb77
|
||||||
|
../../src/core/exn_bt.pp.ml: e5cd6bea505fdb562044427f570782048bbcfb77
|
||||||
|
../../src/core/fifo_pool.ml: c9e24c2e8cf7c56143e5ed42c355c03d02d56652
|
||||||
|
../../src/core/fifo_pool.ml: c9e24c2e8cf7c56143e5ed42c355c03d02d56652
|
||||||
|
../../src/core/fifo_pool.pp.ml: f258fa6dc5d0ea1ee84efba9f145ea855b24a631
|
||||||
|
../../src/core/fifo_pool.pp.ml: f258fa6dc5d0ea1ee84efba9f145ea855b24a631
|
||||||
|
../../src/core/fut.ml: 0076fabd647b5efaa6fd808f077c64c9ecf50761
|
||||||
|
../../src/core/fut.ml: 0076fabd647b5efaa6fd808f077c64c9ecf50761
|
||||||
|
../../src/core/fut.pp.ml: efa412417f6a95e0b38f5068565a4dc5d1f5ae80
|
||||||
|
../../src/core/fut.pp.ml: efa412417f6a95e0b38f5068565a4dc5d1f5ae80
|
||||||
|
../../src/core/immediate_runner.ml: d616257706d0700273bf84f5334f9e421ff3b6db
|
||||||
|
../../src/core/immediate_runner.ml: d616257706d0700273bf84f5334f9e421ff3b6db
|
||||||
|
../../src/core/immediate_runner.pp.ml: d616257706d0700273bf84f5334f9e421ff3b6db
|
||||||
|
../../src/core/immediate_runner.pp.ml: d616257706d0700273bf84f5334f9e421ff3b6db
|
||||||
|
../../src/core/lock.ml: ed161041459cab03969cac14d2cc33e5bca93e8f
|
||||||
|
../../src/core/lock.ml: ed161041459cab03969cac14d2cc33e5bca93e8f
|
||||||
|
../../src/core/lock.pp.ml: ed161041459cab03969cac14d2cc33e5bca93e8f
|
||||||
|
../../src/core/lock.pp.ml: ed161041459cab03969cac14d2cc33e5bca93e8f
|
||||||
|
../../src/core/moonpool.ml: fd662a1a0d5d8eb349b354e020d1d209ee1c3a5c
|
||||||
|
../../src/core/moonpool.ml: fd662a1a0d5d8eb349b354e020d1d209ee1c3a5c
|
||||||
|
../../src/core/moonpool.pp.ml: d3c0ed85c23e01c0ccebcf3eecec21f0f86fa2c6
|
||||||
|
../../src/core/moonpool.pp.ml: d3c0ed85c23e01c0ccebcf3eecec21f0f86fa2c6
|
||||||
|
../../src/core/runner.ml: cee177d402f775879f853e487d35429affb9272a
|
||||||
|
../../src/core/runner.ml: cee177d402f775879f853e487d35429affb9272a
|
||||||
|
../../src/core/runner.pp.ml: cee177d402f775879f853e487d35429affb9272a
|
||||||
|
../../src/core/runner.pp.ml: cee177d402f775879f853e487d35429affb9272a
|
||||||
|
../../src/core/suspend_.ml: 6444a03032f51f3e5c8a5a26298333934f3c73b0
|
||||||
|
../../src/core/suspend_.ml: 6444a03032f51f3e5c8a5a26298333934f3c73b0
|
||||||
|
../../src/core/suspend_.pp.ml: ef07aefc1f6a590e2508ecafefd8c3508cd312d2
|
||||||
|
../../src/core/suspend_.pp.ml: ef07aefc1f6a590e2508ecafefd8c3508cd312d2
|
||||||
|
../../src/core/task_local_storage.ml: 89ede0bb4821bdd6fff0c1aba9fdd161914668e9
|
||||||
|
../../src/core/task_local_storage.ml: 89ede0bb4821bdd6fff0c1aba9fdd161914668e9
|
||||||
|
../../src/core/task_local_storage.pp.ml: 89ede0bb4821bdd6fff0c1aba9fdd161914668e9
|
||||||
|
../../src/core/task_local_storage.pp.ml: 89ede0bb4821bdd6fff0c1aba9fdd161914668e9
|
||||||
|
../../src/core/types_.ml: 48dde17cf05a510a258be9ca2ea1a20f5da4e3cd
|
||||||
|
../../src/core/types_.ml: 48dde17cf05a510a258be9ca2ea1a20f5da4e3cd
|
||||||
|
../../src/core/types_.pp.ml: 48dde17cf05a510a258be9ca2ea1a20f5da4e3cd
|
||||||
|
../../src/core/types_.pp.ml: 48dde17cf05a510a258be9ca2ea1a20f5da4e3cd
|
||||||
|
../../src/core/util_pool_.ml: e9c362323178dc1dcb58276eb36729e9634ba7fd
|
||||||
|
../../src/core/util_pool_.ml: e9c362323178dc1dcb58276eb36729e9634ba7fd
|
||||||
|
../../src/core/util_pool_.pp.ml: e9c362323178dc1dcb58276eb36729e9634ba7fd
|
||||||
|
../../src/core/util_pool_.pp.ml: e9c362323178dc1dcb58276eb36729e9634ba7fd
|
||||||
|
../../src/core/ws_pool.ml: c4b4e64dbcd494fa60d3c3158cc0e0e247269a3d
|
||||||
|
../../src/core/ws_pool.ml: c4b4e64dbcd494fa60d3c3158cc0e0e247269a3d
|
||||||
|
../../src/core/ws_pool.pp.ml: 0074b9c5735e05c6781ee98fb593019771964f5e
|
||||||
|
../../src/core/ws_pool.pp.ml: 0074b9c5735e05c6781ee98fb593019771964f5e
|
||||||
|
"../../src/cpp/.cpp.eobjs/byte"
|
||||||
|
"../../src/cpp/.cpp.eobjs/native"
|
||||||
|
../../src/cpp/cpp.ml: 95f8df4e79fe7575aff0c126b329d930be82dde9
|
||||||
|
../../src/cpp/cpp.ml: 95f8df4e79fe7575aff0c126b329d930be82dde9
|
||||||
|
../../src/fib/fiber.ml: 771c014648a6f7e00d93ab3a5c4bb2ec49841c4d
|
||||||
|
../../src/fib/fiber.ml: 771c014648a6f7e00d93ab3a5c4bb2ec49841c4d
|
||||||
|
../../src/fib/fiber.pp.ml: 771c014648a6f7e00d93ab3a5c4bb2ec49841c4d
|
||||||
|
../../src/fib/fiber.pp.ml: 771c014648a6f7e00d93ab3a5c4bb2ec49841c4d
|
||||||
|
../../src/fib/fls.ml: 1d2d745c203a03980195471421e4101879d46a31
|
||||||
|
../../src/fib/fls.ml: 1d2d745c203a03980195471421e4101879d46a31
|
||||||
|
../../src/fib/fls.pp.ml: 1d2d745c203a03980195471421e4101879d46a31
|
||||||
|
../../src/fib/fls.pp.ml: 1d2d745c203a03980195471421e4101879d46a31
|
||||||
|
../../src/fib/handle.ml: d3c9c3c2c414372e8ce6cd7eb113955292cdda5e
|
||||||
|
../../src/fib/handle.ml: d3c9c3c2c414372e8ce6cd7eb113955292cdda5e
|
||||||
|
../../src/fib/handle.pp.ml: d3c9c3c2c414372e8ce6cd7eb113955292cdda5e
|
||||||
|
../../src/fib/handle.pp.ml: d3c9c3c2c414372e8ce6cd7eb113955292cdda5e
|
||||||
|
../../src/forkjoin/moonpool_forkjoin.ml: bc38ed5d228a85465bbd4e67d1e1f227d57b5fe3
|
||||||
|
../../src/forkjoin/moonpool_forkjoin.ml: bc38ed5d228a85465bbd4e67d1e1f227d57b5fe3
|
||||||
|
../../src/lwt/base.ml: f04b92ec1f6d9f389b7c5dc26fc17e8bd80c4673
|
||||||
|
../../src/lwt/base.ml: f04b92ec1f6d9f389b7c5dc26fc17e8bd80c4673
|
||||||
|
../../src/lwt/common_.ml: b3267137b9e0d74d220b090de9fcce051dc2bf93
|
||||||
|
../../src/lwt/common_.ml: b3267137b9e0d74d220b090de9fcce051dc2bf93
|
||||||
|
../../src/lwt/IO_in.ml: 6badd5ffb8fbbdb53f729b93a478bb007f2494f8
|
||||||
|
../../src/lwt/IO_in.ml: 6badd5ffb8fbbdb53f729b93a478bb007f2494f8
|
||||||
|
../../src/lwt/IO.ml: 48fae1816121700314aebbdfcca562979dc3ff06
|
||||||
|
../../src/lwt/IO.ml: 48fae1816121700314aebbdfcca562979dc3ff06
|
||||||
|
../../src/lwt/IO_out.ml: 600db42f1fecdd95ab216db85eadac6371db53c2
|
||||||
|
../../src/lwt/IO_out.ml: 600db42f1fecdd95ab216db85eadac6371db53c2
|
||||||
|
../../src/lwt/moonpool_lwt.ml: c71a73fb39bc2be146c7a30528799235c86cfcb8
|
||||||
|
../../src/lwt/moonpool_lwt.ml: c71a73fb39bc2be146c7a30528799235c86cfcb8
|
||||||
|
../../src/lwt/tcp_client.ml: d9c3f1a80709d2a3160309f00343bd1f561d879d
|
||||||
|
../../src/lwt/tcp_client.ml: d9c3f1a80709d2a3160309f00343bd1f561d879d
|
||||||
|
../../src/lwt/tcp_server.ml: 8219be881ec5b28a15cf6a5f3fc8cd6242f55091
|
||||||
|
../../src/lwt/tcp_server.ml: 8219be881ec5b28a15cf6a5f3fc8cd6242f55091
|
||||||
|
../../src/private/atomic_.ml: 59361c33aecdba9500f23520f6d132dc17994403
|
||||||
|
../../src/private/atomic_.ml: 59361c33aecdba9500f23520f6d132dc17994403
|
||||||
|
../../src/private/atomic_.pp.ml: 0da0702698c2bf4d32e20ba759f049f5c08aed4b
|
||||||
|
../../src/private/atomic_.pp.ml: 0da0702698c2bf4d32e20ba759f049f5c08aed4b
|
||||||
|
../../src/private/dla_.ml: 0a358d447df534f08fd7200b5b86ef0ecf56c385
|
||||||
|
../../src/private/dla_.ml: 0a358d447df534f08fd7200b5b86ef0ecf56c385
|
||||||
|
../../src/private/dla_.pp.ml: 0a358d447df534f08fd7200b5b86ef0ecf56c385
|
||||||
|
../../src/private/dla_.pp.ml: 0a358d447df534f08fd7200b5b86ef0ecf56c385
|
||||||
|
../../src/private/dla_.real.ml: 61f358e9c5dc5e3981257544fb9619c101862072
|
||||||
|
../../src/private/dla_.real.ml: 61f358e9c5dc5e3981257544fb9619c101862072
|
||||||
|
../../src/private/domain_.ml: f9d3066c0302c7538bba7f3c66373994930e6582
|
||||||
|
../../src/private/domain_.ml: f9d3066c0302c7538bba7f3c66373994930e6582
|
||||||
|
../../src/private/domain_.pp.ml: 7a49ce3176beda664781d982536a7491b6c7d1e2
|
||||||
|
../../src/private/domain_.pp.ml: 7a49ce3176beda664781d982536a7491b6c7d1e2
|
||||||
|
../../src/private/thread_local_storage_.ml: 0608b7a6514ff68c5301f2c90fce5bdbfa9b85a9
|
||||||
|
../../src/private/thread_local_storage_.ml: 0608b7a6514ff68c5301f2c90fce5bdbfa9b85a9
|
||||||
|
../../src/private/thread_local_storage_.pp.ml: 0608b7a6514ff68c5301f2c90fce5bdbfa9b85a9
|
||||||
|
../../src/private/thread_local_storage_.pp.ml: 0608b7a6514ff68c5301f2c90fce5bdbfa9b85a9
|
||||||
|
../../src/private/thread_local_storage_.stub.ml: 912952a77ec2ff34ee31eb8f91de1b2fe2f2c802
|
||||||
|
../../src/private/thread_local_storage_.stub.ml: 912952a77ec2ff34ee31eb8f91de1b2fe2f2c802
|
||||||
|
../../src/private/tracing_.ml: cc2edf9a726a4af1b06caa0201c9800884efafba
|
||||||
|
../../src/private/tracing_.ml: cc2edf9a726a4af1b06caa0201c9800884efafba
|
||||||
|
../../src/private/tracing_.pp.ml: cc2edf9a726a4af1b06caa0201c9800884efafba
|
||||||
|
../../src/private/tracing_.pp.ml: cc2edf9a726a4af1b06caa0201c9800884efafba
|
||||||
|
../../src/private/tracing_.real.ml: cef5edfa46b0ac7c9d507de73776a3c48c856860
|
||||||
|
../../src/private/tracing_.real.ml: cef5edfa46b0ac7c9d507de73776a3c48c856860
|
||||||
|
../../src/private/ws_deque_.ml: 03a3764ef4f30673735f08b0e2458afdbb678402
|
||||||
|
../../src/private/ws_deque_.ml: 03a3764ef4f30673735f08b0e2458afdbb678402
|
||||||
|
../../src/private/ws_deque_.pp.ml: 03a3764ef4f30673735f08b0e2458afdbb678402
|
||||||
|
../../src/private/ws_deque_.pp.ml: 03a3764ef4f30673735f08b0e2458afdbb678402
|
||||||
8
test/lwt/run_hash.sh
Executable file
8
test/lwt/run_hash.sh
Executable file
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
./hash_server.exe &
|
||||||
|
|
||||||
|
echo "run hash client $@"
|
||||||
|
./hash_client.exe $@ | sort
|
||||||
|
|
||||||
|
kill %1
|
||||||
Loading…
Add table
Reference in a new issue