LUMIERA.clone/tests/00support.tests
Ichthyostega 088e4422fb Test helper to show demangled C++ names
Heureka! found out that the C++ standard library exposes a
cross vendor C++ ABI, which amongst others allows to show
object code names and type-IDs in the language-level, human
readable unmangeld form.

Of course, actual application code should not rely on such a
internal representation, yet it is of tremendous help when
writing and debugging unit tests.

Signed-off-by: Ichthyostega <prg@ichthyostega.de>
2014-11-22 03:31:59 +01:00

58 lines
1.9 KiB
Text

TESTING "Test support and helpers" ./test-suite --group=common
TEST "Test support functions" TestHelper_test <<END
out: [a-z0-9]{80}$
out: Displaying types and sizes....
out: sizeof..theUniverse.+ = 42
out: sizeof..just a char.+ = 1
out: sizeof.+lib.+test.+test.+Murpf.+ = 1
out: sizeof.+lib.+test.+test.+Wrmrmpft.+ = 2
out: sizeof.+lib.+test.+test.+Wrmrmpft.+ = 3
out: sizeof.+lib.+test.+test.+Wrmrmpft.+Murpf.+ = 1
END
TEST "Helper to show demangled C++ names" TestHelperDemangling_test <<END
out: .+lib.test.test.Space.+Outer.+Inner
out-lit: lib::test::test::Space const* (*)(lib::test::test::Outer<lib::test::test::Space>::Inner const&&)
END
TEST "Testsuite option handling" TestOption_test <<END
out: Testing invocation with cmdline: ...
out: --> Testgroup=ALL
out: --> Test-ID =--missing--
out: --> remaining=
out: Testing invocation with cmdline: --help...
out: --> Testgroup=ALL
out: --> Test-ID =--missing--
out: --> remaining=
out: Testing invocation with cmdline: --group TestGroupID...
out: --> Testgroup=TestGroupID
out: --> Test-ID =--missing--
out: --> remaining=
out: Testing invocation with cmdline: SingleTestID...
out: --> Testgroup=ALL
out: --> Test-ID =SingleTestID
out: --> remaining=SingleTestID
out: Testing invocation with cmdline: SingleTestID --group TestGroupID...
out: --> Testgroup=TestGroupID
out: --> Test-ID =SingleTestID
out: --> remaining=SingleTestID
out: Testing invocation with cmdline: --group TestGroupID SingleTestID ...
out: --> Testgroup=TestGroupID
out: --> Test-ID =SingleTestID
out: --> remaining=SingleTestID
out: Testing invocation with cmdline: --group TestGroupID SingleTestID spam eggs...
out: --> Testgroup=TestGroupID
out: --> Test-ID =SingleTestID
out: --> remaining=SingleTestID spam eggs
out: Testing invocation with cmdline: SingleTestID spam --group TestGroupID --eggs...
out: --> Testgroup=TestGroupID
out: --> Test-ID =SingleTestID
out: --> remaining=SingleTestID spam --eggs
END