From fc546f71b420d697a301a7cc4941d04a27a5c3d8 Mon Sep 17 00:00:00 2001 From: Ichthyostega Date: Sat, 31 Mar 2018 17:12:45 +0200 Subject: [PATCH] Reorganise some tests Dependency-Injection rather fits into the "fundamentals" section. It is more than a mere library facility --- tests/12metaprogramming.tests | 85 +++++++++++ tests/15library.tests | 139 ------------------ tests/25fundamental.tests | 56 ++++++- .../dependency-configuration-test.cpp | 0 .../dependency-factory-test.cpp | 0 .../singleton-subclass-test.cpp | 0 tests/{library => basics}/singleton-test.cpp | 0 .../singleton-testmock-test.cpp | 0 tests/{library => basics}/test-target-obj.hpp | 0 9 files changed, 140 insertions(+), 140 deletions(-) rename tests/{library => basics}/dependency-configuration-test.cpp (100%) rename tests/{library => basics}/dependency-factory-test.cpp (100%) rename tests/{library => basics}/singleton-subclass-test.cpp (100%) rename tests/{library => basics}/singleton-test.cpp (100%) rename tests/{library => basics}/singleton-testmock-test.cpp (100%) rename tests/{library => basics}/test-target-obj.hpp (100%) diff --git a/tests/12metaprogramming.tests b/tests/12metaprogramming.tests index 36ee4d7ac..735cd3b53 100644 --- a/tests/12metaprogramming.tests +++ b/tests/12metaprogramming.tests @@ -2,6 +2,91 @@ TESTING "Metaprogramming facilities and techniques" ./test-suite --group=common +TEST "casting or converting access helper" AccessCasted_test < = 1 +out-lit: can_downcast = 1 +out-lit: can_downcast = 1 +out-lit: can_downcast = 0 +out-lit: can_downcast = 0 +out-lit: can_downcast = 1 +out-lit: can_downcast = 1 +out-lit: can_downcast = 1 +out-lit: can_downcast = 1 +out-lit: has_RTTI = 0 +out-lit: has_RTTI = 1 +out-lit: has_RTTI = 1 +out-lit: is_convertible = 0 +out-lit: is_convertible = 1 +out-lit: can_use_dynamic_downcast = 0 +out-lit: can_use_conversion = 0 +out-lit: can_use_dynamic_downcast = 0 +out-lit: can_use_conversion = 1 +out-lit: can_use_dynamic_downcast = 0 +out-lit: can_use_conversion = 1 +out-lit: can_use_conversion = 0 +out-lit: can_use_dynamic_downcast = 0 +out-lit: can_use_conversion = 0 +out-lit: can_use_dynamic_downcast = 1 +out-lit: === standard case: References === +out: Access\(D as D&\) .+D.. adr=╲\w{8} ↗«D» +out: Access\(D& as D&\) .+D.. adr=╲\w{8} ↗«D» +out-lit: === build a value object === +out: Access.D as D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D& as D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D&& as D. .+D.. adr=╲\w{8} ↗«D» +out-lit: === take a pointer === +out: Access.D as D\*. .+╲\w{8} +out: Access.D& as D\*. .+╲\w{8} +out-lit: === dereference a pointer === +out: Access.D\* as D&. .+D.. adr=╲\w{8} ↗«D» +out: Access.D\* as D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D\*&& as D. .+D.. adr=╲\w{8} ↗«D» +out-lit: === const correctness === +out: Access.D as D const&. .+D.. adr=╲\w{8} ↗«D» +out: Access.D& as D const&. .+D.. adr=╲\w{8} ↗«D» +out: Access.D as const D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D& as const D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D as const D\*. .+╲\w{8} +out: Access.D& as const D\*. .+╲\w{8} +out: Access.D\* as D const&. .+D.. adr=╲\w{8} ↗«D» +out: Access.D\* as const D. .+D.. adr=╲\w{8} ↗«D» +out: Access.const D as D const&. .+D.. adr=╲\w{8} ↗«D» +out: Access.D const& as D const&. .+D.. adr=╲\w{8} ↗«D» +out: Access.const D as const D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D const& as const D. .+D.. adr=╲\w{8} ↗«D» +out: Access.const D as const D\*..+╲\w{8} +out: Access.D const& as const D\*..+╲\w{8} +out: Access.const D\* as D const&..+D.. adr=╲\w{8} ↗«D» +out: Access.const D\* as const D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D const& as D. .+D.. adr=╲\w{8} ↗«D» +out: Access.D const&& as D. .+D.. adr=╲\w{8} ↗«D» +out-lit: === work cases: actual conversions === +out: Access.B& as B&. .+B.. adr=╲\w{8} ↗«B» +out: Access.D& as B&. .+B.. adr=╲\w{8} ↗«B» +out: Access.B\* as B\*. .+╲\w{8} +out: Access.D\* as B\*. .+╲\w{8} +out: Access.D& as B\*. .+╲\w{8} +out: Access.D\* as B&. .+B.. adr=╲\w{8} ↗«B» +out: Access.B\*& as B\*&. .+╲\w{8} +out: Access.D\*& as D\*&. .+╲\w{8} +out: Access.D& as const B\*. .+╲\w{8} +out: Access.D\* as B const&. .+B.. adr=╲\w{8} ↗«B» +out: Access.D const& as const B\*..+╲\w{8} +out: Access.const D\* as B const&..+B.. adr=╲\w{8} ↗«B» +out: Access.E\(F\)& as F&. .+F.. adr=╲\w{8} ↗«F» +out: Access.E\(F\)\* as F\*. .+╲\w{8} +out: Access.E\(F\)\* as F&. .+F.. adr=╲\w{8} ↗«F» +out: Access.E\(F\)& as F\*. .+╲\w{8} +out: Access.F\\* as X\*. .+╲\w{8} +out: Access.X\(F\)\* as X\*. .+╲\w{8} +out: Access.F\* as B&. .+B.. adr=╲\w{8} ↗«B» +out: Access.F\* as E&*. .+E.. adr=╲\w{8} ↗«F» +out-lit: Access(int as double) --->2 +out-lit: Access(float as long) --->3 +return: 0 +END + + TEST "ConfigFlags_test" ConfigFlags_test <- diff --git a/tests/15library.tests b/tests/15library.tests index 8f7e8777d..6b35e4898 100644 --- a/tests/15library.tests +++ b/tests/15library.tests @@ -2,91 +2,6 @@ TESTING "Library Test Suite: basic and low-level components" ./test-suite --grou -TEST "casting or converting access helper" AccessCasted_test < = 1 -out-lit: can_downcast = 1 -out-lit: can_downcast = 1 -out-lit: can_downcast = 0 -out-lit: can_downcast = 0 -out-lit: can_downcast = 1 -out-lit: can_downcast = 1 -out-lit: can_downcast = 1 -out-lit: can_downcast = 1 -out-lit: has_RTTI = 0 -out-lit: has_RTTI = 1 -out-lit: has_RTTI = 1 -out-lit: is_convertible = 0 -out-lit: is_convertible = 1 -out-lit: can_use_dynamic_downcast = 0 -out-lit: can_use_conversion = 0 -out-lit: can_use_dynamic_downcast = 0 -out-lit: can_use_conversion = 1 -out-lit: can_use_dynamic_downcast = 0 -out-lit: can_use_conversion = 1 -out-lit: can_use_conversion = 0 -out-lit: can_use_dynamic_downcast = 0 -out-lit: can_use_conversion = 0 -out-lit: can_use_dynamic_downcast = 1 -out-lit: === standard case: References === -out: Access\(D as D&\) .+D.. adr=╲\w{8} ↗«D» -out: Access\(D& as D&\) .+D.. adr=╲\w{8} ↗«D» -out-lit: === build a value object === -out: Access.D as D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D& as D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D&& as D. .+D.. adr=╲\w{8} ↗«D» -out-lit: === take a pointer === -out: Access.D as D\*. .+╲\w{8} -out: Access.D& as D\*. .+╲\w{8} -out-lit: === dereference a pointer === -out: Access.D\* as D&. .+D.. adr=╲\w{8} ↗«D» -out: Access.D\* as D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D\*&& as D. .+D.. adr=╲\w{8} ↗«D» -out-lit: === const correctness === -out: Access.D as D const&. .+D.. adr=╲\w{8} ↗«D» -out: Access.D& as D const&. .+D.. adr=╲\w{8} ↗«D» -out: Access.D as const D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D& as const D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D as const D\*. .+╲\w{8} -out: Access.D& as const D\*. .+╲\w{8} -out: Access.D\* as D const&. .+D.. adr=╲\w{8} ↗«D» -out: Access.D\* as const D. .+D.. adr=╲\w{8} ↗«D» -out: Access.const D as D const&. .+D.. adr=╲\w{8} ↗«D» -out: Access.D const& as D const&. .+D.. adr=╲\w{8} ↗«D» -out: Access.const D as const D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D const& as const D. .+D.. adr=╲\w{8} ↗«D» -out: Access.const D as const D\*..+╲\w{8} -out: Access.D const& as const D\*..+╲\w{8} -out: Access.const D\* as D const&..+D.. adr=╲\w{8} ↗«D» -out: Access.const D\* as const D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D const& as D. .+D.. adr=╲\w{8} ↗«D» -out: Access.D const&& as D. .+D.. adr=╲\w{8} ↗«D» -out-lit: === work cases: actual conversions === -out: Access.B& as B&. .+B.. adr=╲\w{8} ↗«B» -out: Access.D& as B&. .+B.. adr=╲\w{8} ↗«B» -out: Access.B\* as B\*. .+╲\w{8} -out: Access.D\* as B\*. .+╲\w{8} -out: Access.D& as B\*. .+╲\w{8} -out: Access.D\* as B&. .+B.. adr=╲\w{8} ↗«B» -out: Access.B\*& as B\*&. .+╲\w{8} -out: Access.D\*& as D\*&. .+╲\w{8} -out: Access.D& as const B\*. .+╲\w{8} -out: Access.D\* as B const&. .+B.. adr=╲\w{8} ↗«B» -out: Access.D const& as const B\*..+╲\w{8} -out: Access.const D\* as B const&..+B.. adr=╲\w{8} ↗«B» -out: Access.E\(F\)& as F&. .+F.. adr=╲\w{8} ↗«F» -out: Access.E\(F\)\* as F\*. .+╲\w{8} -out: Access.E\(F\)\* as F&. .+F.. adr=╲\w{8} ↗«F» -out: Access.E\(F\)& as F\*. .+╲\w{8} -out: Access.F\\* as X\*. .+╲\w{8} -out: Access.X\(F\)\* as X\*. .+╲\w{8} -out: Access.F\* as B&. .+B.. adr=╲\w{8} ↗«B» -out: Access.F\* as E&*. .+E.. adr=╲\w{8} ↗«F» -out-lit: Access(int as double) --->2 -out-lit: Access(float as long) --->3 -return: 0 -END - - TEST "CmdlineWrapper_test" CmdlineWrapper_test < @@ -133,26 +48,6 @@ return: 0 END -TEST "Dependency injection" DependencyFactory_test <