From 6e8877f17711675cbbedaa8cae35ff8e73b72f2b Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Thu, 30 Oct 2025 22:05:08 -0400 Subject: [PATCH] test: reference test for encoding size --- tests/core/dune | 4 ++-- tests/core/t_size.expected | 1 + tests/core/t_size.ml | 22 ++++++++++++++++++++++ 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 tests/core/t_size.expected create mode 100644 tests/core/t_size.ml diff --git a/tests/core/dune b/tests/core/dune index 8a702b10..77d2b02f 100644 --- a/tests/core/dune +++ b/tests/core/dune @@ -1,4 +1,4 @@ (tests - (names test_trace_context) + (names test_trace_context t_size) (package opentelemetry) - (libraries opentelemetry)) + (libraries opentelemetry opentelemetry.client)) diff --git a/tests/core/t_size.expected b/tests/core/t_size.expected new file mode 100644 index 00000000..391ca120 --- /dev/null +++ b/tests/core/t_size.expected @@ -0,0 +1 @@ +metrics size: 492B diff --git a/tests/core/t_size.ml b/tests/core/t_size.ml new file mode 100644 index 00000000..97e989df --- /dev/null +++ b/tests/core/t_size.ml @@ -0,0 +1,22 @@ +(* test the size of serialized data *) + +open Opentelemetry + +let m = + Metrics.make_resource_metrics + [ + Metrics.sum ~name:"sum.foo" + [ + Metrics.int ~start_time_unix_nano:42L ~now:45L 10; + Metrics.int ~start_time_unix_nano:52L ~now:55L 20; + ]; + Metrics.gauge ~name:"gauge.bar" + [ + Metrics.float ~start_time_unix_nano:42L ~now:45L 10.; + Metrics.float ~start_time_unix_nano:52L ~now:55L 20.; + ]; + ] + +let () = + let str = Opentelemetry_client.Signal.Encode.metrics [ m; m ] in + Printf.printf "metrics size: %dB\n" (String.length str)