From cc0ca792e619382b2e2dee7af21ca827c8e5fb9b Mon Sep 17 00:00:00 2001 From: Philippe Proulx Date: Wed, 19 Nov 2014 21:50:33 -0500 Subject: [PATCH] Factor out common metadata prologues Signed-off-by: Philippe Proulx --- .../metadata/pass/large-metadata/test.py | 20 +++--------------- .../metadata/pass/long-identifier/test.py | 19 ++--------------- .../metadata/pass/many-callsites/test.py | 19 ++--------------- .../metadata/pass/many-typealias/test.py | 21 +------------------ .../stress/metadata/pass/many-typedef/test.py | 21 +------------------ utils/python/ctftestsuite/stress.py | 19 +++++++++++++++++ 6 files changed, 28 insertions(+), 91 deletions(-) diff --git a/tests/1.8/stress/metadata/pass/large-metadata/test.py b/tests/1.8/stress/metadata/pass/large-metadata/test.py index 5fb7a60..3e470a0 100755 --- a/tests/1.8/stress/metadata/pass/large-metadata/test.py +++ b/tests/1.8/stress/metadata/pass/large-metadata/test.py @@ -6,23 +6,8 @@ class Test(MetadataTest): what = 'large metadata with {size} extra chars' def write_metadata(self, f): - p1 = '''/* CTF 1.8 */ - -typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t; -typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t; - -trace { - major = 0; - minor = 0; - uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; - byte_order = le; - packet.header := struct { - uint32_t magic; - uint8_t uuid[16]; - }; -}; - -event { + p1 = \ +'''event { name = myevent; fields := struct { uint8_t f; @@ -30,6 +15,7 @@ event { ''' p2 = '\n};\n' + f.write(self.BASIC_PROLOGUE) f.write(p1) for i in range(self.size): diff --git a/tests/1.8/stress/metadata/pass/long-identifier/test.py b/tests/1.8/stress/metadata/pass/long-identifier/test.py index b2a7c9a..a51f663 100755 --- a/tests/1.8/stress/metadata/pass/long-identifier/test.py +++ b/tests/1.8/stress/metadata/pass/long-identifier/test.py @@ -7,23 +7,7 @@ class Test(MetadataTest): def write_metadata(self, f): p1 = \ -'''/* CTF 1.8 */ - -typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t; -typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t; - -trace { - major = 0; - minor = 0; - uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; - byte_order = le; - packet.header := struct { - uint32_t magic; - uint8_t uuid[16]; - }; -}; - -event { +'''event { name = myevent; fields := struct { uint8_t ''' @@ -34,6 +18,7 @@ event { }; ''' + f.write(self.BASIC_PROLOGUE) f.write(p1) for i in range(self.size): diff --git a/tests/1.8/stress/metadata/pass/many-callsites/test.py b/tests/1.8/stress/metadata/pass/many-callsites/test.py index bc02a55..2f4c44e 100755 --- a/tests/1.8/stress/metadata/pass/many-callsites/test.py +++ b/tests/1.8/stress/metadata/pass/many-callsites/test.py @@ -7,23 +7,7 @@ class Test(MetadataTest): def write_metadata(self, f): p1 = \ -'''/* CTF 1.8 */ - -typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t; -typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t; - -trace { - major = 0; - minor = 0; - uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; - byte_order = le; - packet.header := struct { - uint32_t magic; - uint8_t uuid[16]; - }; -}; - -event { +'''event { name = myevent; }; @@ -40,6 +24,7 @@ event { ''' + f.write(self.BASIC_PROLOGUE) f.write(p1) for i in range(self.size): diff --git a/tests/1.8/stress/metadata/pass/many-typealias/test.py b/tests/1.8/stress/metadata/pass/many-typealias/test.py index 97c9893..66cc944 100755 --- a/tests/1.8/stress/metadata/pass/many-typealias/test.py +++ b/tests/1.8/stress/metadata/pass/many-typealias/test.py @@ -6,30 +6,11 @@ class Test(MetadataTest): what = '{size} typealiases' def write_metadata(self, f): - p1 = \ -'''/* CTF 1.8 */ - -typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t; -typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t; - -trace { - major = 0; - minor = 0; - uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; - byte_order = le; - packet.header := struct { - uint32_t magic; - uint8_t uuid[16]; - }; -}; - -''' - typealias_fmt = \ '''typealias integer {{ size = 8; align = 8; signed = false; base = 10; }} := t{name}; ''' - f.write(p1) + f.write(self.BASIC_PROLOGUE) for i in range(self.size): typealias = typealias_fmt.format(name=i) diff --git a/tests/1.8/stress/metadata/pass/many-typedef/test.py b/tests/1.8/stress/metadata/pass/many-typedef/test.py index b5c58b2..9ec068d 100755 --- a/tests/1.8/stress/metadata/pass/many-typedef/test.py +++ b/tests/1.8/stress/metadata/pass/many-typedef/test.py @@ -6,30 +6,11 @@ class Test(MetadataTest): what = '{size} typedefs' def write_metadata(self, f): - p1 = \ -'''/* CTF 1.8 */ - -typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t; -typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t; - -trace { - major = 0; - minor = 0; - uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; - byte_order = le; - packet.header := struct { - uint32_t magic; - uint8_t uuid[16]; - }; -}; - -''' - typedef_fmt = \ '''typedef integer {{ size = 8; align = 8; signed = false; base = 10; }} t{name}; ''' - f.write(p1) + f.write(self.BASIC_PROLOGUE) for i in range(self.size): typedef = typedef_fmt.format(name=i) diff --git a/utils/python/ctftestsuite/stress.py b/utils/python/ctftestsuite/stress.py index d355fa3..6f85ec5 100644 --- a/utils/python/ctftestsuite/stress.py +++ b/utils/python/ctftestsuite/stress.py @@ -5,6 +5,25 @@ import os class MetadataTest: + BASIC_PROLOGUE = \ +'''/* CTF 1.8 */ + +typealias integer { size = 8; align = 8; signed = false; base = 10; } := uint8_t; +typealias integer { size = 32; align = 8; signed = false; base = hex; } := uint32_t; + +trace { + major = 0; + minor = 0; + uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; + byte_order = le; + packet.header := struct { + uint32_t magic; + uint8_t uuid[16]; + }; +}; + +''' + def __init__(self): self._actions = { 'prepare': self._prepare, -- 2.34.1