tests: add clock-class before trace-class CTF2 test
authorSimon Marchi <simon.marchi@efficios.com>
Mon, 15 Aug 2022 15:04:19 +0000 (11:04 -0400)
committerSimon Marchi <simon.marchi@efficios.com>
Tue, 23 Aug 2022 16:06:16 +0000 (12:06 -0400)
Add a test with a CTF 2 metadata file where a clock-class fragment is
before the trace-class fragment.  A bug triggered by this patch was hit
during development.

Change-Id: If9fd2497ca31ad73d9db1198f90e2404d9a7a8c1
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
tests/data/ctf-traces/2/succeed/meta-clk-cls-before-trace-cls/metadata [new file with mode: 0644]
tests/data/plugins/src.ctf.fs/succeed/trace-meta-clk-cls-before-trace-cls.expect [new file with mode: 0644]
tests/plugins/src.ctf.fs/succeed/test_succeed

diff --git a/tests/data/ctf-traces/2/succeed/meta-clk-cls-before-trace-cls/metadata b/tests/data/ctf-traces/2/succeed/meta-clk-cls-before-trace-cls/metadata
new file mode 100644 (file)
index 0000000..a0c8274
--- /dev/null
@@ -0,0 +1,19 @@
+\1e
+{
+  "type": "preamble",
+  "version": 2
+}
+\1e
+{
+  "type": "clock-class",
+  "frequency": 1000000000,
+  "name": "monotonic"
+}
+\1e
+{
+  "type": "trace-class"
+}
+\1e
+{
+  "type": "data-stream-class"
+}
diff --git a/tests/data/plugins/src.ctf.fs/succeed/trace-meta-clk-cls-before-trace-cls.expect b/tests/data/plugins/src.ctf.fs/succeed/trace-meta-clk-cls-before-trace-cls.expect
new file mode 100644 (file)
index 0000000..e69de29
index d1063b662215b39f4f98e89d68c0f27011831052..77c6a4326ad96b408648de548518b224e54af1db 100755 (executable)
@@ -45,18 +45,24 @@ test_ctf_gen_single() {
        ok $? "Generated trace '$name' gives the expected output"
 }
 
-test_ctf_single() {
+# Parameters: <trace-name> <ctf-version>
+test_ctf_single_version() {
        local name="$1"
+       local ctf_version="$2"
+       local trace_path
 
-       for ctf_version in 1 2; do
-               local trace_path
+       trace_path=$(succeed_trace_path "$name" "$ctf_version")
+
+       bt_diff_details_ctf_single "$expect_dir/trace-$name.expect" \
+               "$trace_path" "${test_ctf_common_details_args[@]}"
+       ok $? "Trace '$name' gives the expected output - CTF $ctf_version"
+}
 
-               trace_path=$(succeed_trace_path "$name" "$ctf_version")
+test_ctf_single() {
+       local name="$1"
 
-               bt_diff_details_ctf_single "$expect_dir/trace-$name.expect" \
-                       "$trace_path" "${test_ctf_common_details_args[@]}"
-               ok $? "Trace '$name' gives the expected output - CTF $ctf_version"
-       done
+       test_ctf_single_version "$name" 1
+       test_ctf_single_version "$name" 2
 }
 
 test_packet_end() {
@@ -141,7 +147,7 @@ test_force_origin_unix_epoch() {
        rm -f "$temp_stdout_output_file" "$temp_stderr_output_file"
 }
 
-plan_tests 23
+plan_tests 24
 
 test_force_origin_unix_epoch 2packets barectf-event-before-packet
 test_ctf_gen_single simple
@@ -153,5 +159,6 @@ test_ctf_single lttng-tracefile-rotation
 test_ctf_single array-align-elem
 test_ctf_single struct-array-align-elem
 test_ctf_single meta-ctx-sequence
+test_ctf_single_version meta-clk-cls-before-trace-cls 2
 test_packet_end lttng-event-after-packet
 test_packet_end lttng-crash
This page took 0.027249 seconds and 5 git commands to generate.