From bb78e9babb749cde902e054a299b07acc6502af0 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Sat, 17 Jan 2026 20:54:22 -0500 Subject: [PATCH] small test for span tracking --- test/dune | 5 +++++ test/t_debug.expected | 4 ++++ test/t_debug.ml | 19 +++++++++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 test/t_debug.expected create mode 100644 test/t_debug.ml diff --git a/test/dune b/test/dune index 1b3d26d..4033add 100644 --- a/test/dune +++ b/test/dune @@ -11,3 +11,8 @@ (preprocess (pps ppx_trace)) (libraries trace-tef)) + +(test + (name t_debug) + (modules t_debug) + (libraries trace trace.debug trace-tef)) diff --git a/test/t_debug.expected b/test/t_debug.expected new file mode 100644 index 0000000..47b8109 --- /dev/null +++ b/test/t_debug.expected @@ -0,0 +1,4 @@ +[{"pid":2,"cat":"","tid": 3,"dur": 4.00,"ts": 0.00,"name":"main","ph":"X"}trace: warning: 3 spans were not closed + span "sp1" was not closed (2 occurrences) + span "sp2" was not closed (1 occurrences) +] \ No newline at end of file diff --git a/test/t_debug.ml b/test/t_debug.ml new file mode 100644 index 0000000..5257172 --- /dev/null +++ b/test/t_debug.ml @@ -0,0 +1,19 @@ +let ( let@ ) = ( @@ ) + +let main () = + let@ _sp = Trace.with_span ~__FILE__ ~__LINE__ "main" in + + let _sp1 = Trace.enter_span ~__FILE__ ~__LINE__ "sp1" in + let _sp2 = Trace.enter_span ~__FILE__ ~__LINE__ "sp2" in + let _sp1' = Trace.enter_span ~__FILE__ ~__LINE__ "sp1" in + + () + +let () = + Trace_tef.Private_.mock_all_ (); + let@ () = + Trace.with_setup_collector + (Trace_tef.collector ~out:`Stdout () + |> Trace_debug.Track_spans.track ~on_lingering_spans:(`Out stdout)) + in + main ()