From 152a577195ac7d504935bd59b41a48678d9b22d0 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Thu, 28 Apr 2011 20:39:32 -0400 Subject: [PATCH] Add metadata test cases Signed-off-by: Mathieu Desnoyers --- .../ctf-test/fail/array-negative-len.txt | 2 ++ .../fail/array-unexisting-elem-type.txt | 1 + .../fail/sequence-incorrect-elem-type.txt | 2 ++ ...sequence-incorrect-len-type-signedness.txt | 3 +++ .../fail/sequence-incorrect-len-type.txt | 3 +++ .../fail/struct-unexisting-field-type.txt | 4 ++++ .../fail/typedef-untagged-variant.txt | 6 ++++++ .../fail/variant-unexisting-field-type.txt | 4 ++++ .../metadata/ctf-test/succeed/ctf-test.txt | 19 +++++++++++++++++++ 9 files changed, 44 insertions(+) create mode 100644 formats/ctf/metadata/ctf-test/fail/array-negative-len.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/array-unexisting-elem-type.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/sequence-incorrect-elem-type.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type-signedness.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/struct-unexisting-field-type.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/typedef-untagged-variant.txt create mode 100644 formats/ctf/metadata/ctf-test/fail/variant-unexisting-field-type.txt diff --git a/formats/ctf/metadata/ctf-test/fail/array-negative-len.txt b/formats/ctf/metadata/ctf-test/fail/array-negative-len.txt new file mode 100644 index 00000000..1f90a393 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/array-negative-len.txt @@ -0,0 +1,2 @@ +typealias integer { size = 32; align = 32; signedness = false; } := uint; +typedef uint myarray[-10]; diff --git a/formats/ctf/metadata/ctf-test/fail/array-unexisting-elem-type.txt b/formats/ctf/metadata/ctf-test/fail/array-unexisting-elem-type.txt new file mode 100644 index 00000000..cd93c775 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/array-unexisting-elem-type.txt @@ -0,0 +1 @@ +typedef nonexist myarray[10]; diff --git a/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-elem-type.txt b/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-elem-type.txt new file mode 100644 index 00000000..0c9eb4f6 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-elem-type.txt @@ -0,0 +1,2 @@ +typealias integer { size = 32; align = 32; signed = false; } := uint; +typedef nonexist testseq[uint]; diff --git a/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type-signedness.txt b/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type-signedness.txt new file mode 100644 index 00000000..90d07a58 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type-signedness.txt @@ -0,0 +1,3 @@ +typealias integer { size = 32; align = 32; signed = false; } := uint; +typealias integer { size = 32; align = 32; signed = true; } := int; +typedef uint testseq[int]; diff --git a/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type.txt b/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type.txt new file mode 100644 index 00000000..1f657f62 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/sequence-incorrect-len-type.txt @@ -0,0 +1,3 @@ +struct name {}; +typealias integer { size = 32; align = 32; signed = false; } := uint; +typedef uint testseq[struct name]; diff --git a/formats/ctf/metadata/ctf-test/fail/struct-unexisting-field-type.txt b/formats/ctf/metadata/ctf-test/fail/struct-unexisting-field-type.txt new file mode 100644 index 00000000..ef63fb79 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/struct-unexisting-field-type.txt @@ -0,0 +1,4 @@ +struct test { + int a; + int b; +}; diff --git a/formats/ctf/metadata/ctf-test/fail/typedef-untagged-variant.txt b/formats/ctf/metadata/ctf-test/fail/typedef-untagged-variant.txt new file mode 100644 index 00000000..6ca40319 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/typedef-untagged-variant.txt @@ -0,0 +1,6 @@ +typealias integer { size = 32; align = 32; signed = true; } := int; + +typedef variant { + int a; + int b; +} name; diff --git a/formats/ctf/metadata/ctf-test/fail/variant-unexisting-field-type.txt b/formats/ctf/metadata/ctf-test/fail/variant-unexisting-field-type.txt new file mode 100644 index 00000000..10d61557 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/fail/variant-unexisting-field-type.txt @@ -0,0 +1,4 @@ +variant test { + int a; + int b; +}; diff --git a/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt b/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt index 34dd8274..efbd3707 100644 --- a/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt +++ b/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt @@ -1,5 +1,6 @@ typealias integer { size = 32; align = 32; signed = true; } := int; +typealias integer { size = 32; align = 32; signed = false; } := uint; typealias integer { size = 64; align = 64; signed = true; } := long; typealias integer { size = 64; align = 64; } := unsigned long; @@ -178,3 +179,21 @@ event { }; typealias integer { size = 32; align = 32; signed = false; } := unsigned long long *; + +variant vardecl { + int a; + int b; +}; + +event { + name = test_event2; + id = 1; + stream_id = 5; + payload := struct { + enum : char { a = 0, b = 1, } tag; + variant vardecl myvariant; + }; +}; + +typedef int myarray[10]; +typedef int myseq[uint]; -- 2.34.1