diff --git a/tests/t00065/module1/module1.h b/tests/t00065/module1/module1.h index ee61d62f..9e78aada 100644 --- a/tests/t00065/module1/module1.h +++ b/tests/t00065/module1/module1.h @@ -4,7 +4,14 @@ namespace clanguml { namespace t00065 { + +enum class ABC { a, b, c }; + +enum XYZ { x, y, z }; + struct A { + ABC abc; + XYZ xyz; detail::AImpl *pimpl; }; } diff --git a/tests/t00065/module2/concepts/concepts.h b/tests/t00065/module2/concepts/concepts.h new file mode 100644 index 00000000..2cbfe192 --- /dev/null +++ b/tests/t00065/module2/concepts/concepts.h @@ -0,0 +1,13 @@ +#pragma once + +namespace clanguml { +namespace t00065 { + +template +concept bconcept = requires(T t) { + T{}; + t.b(); + }; + +} +} \ No newline at end of file diff --git a/tests/t00065/module2/module2.h b/tests/t00065/module2/module2.h index 6e90e697..bca56d84 100644 --- a/tests/t00065/module2/module2.h +++ b/tests/t00065/module2/module2.h @@ -1,7 +1,21 @@ #pragma once +#include "concepts/concepts.h" + namespace clanguml { namespace t00065 { -struct B { }; +struct B { + B() = default; + void b() { } +}; + +template struct C { + T *t; +}; + +template struct D { + T t; +}; + } } \ No newline at end of file diff --git a/tests/t00065/t00065.cc b/tests/t00065/t00065.cc index 667316d1..0f0fae66 100644 --- a/tests/t00065/t00065.cc +++ b/tests/t00065/t00065.cc @@ -5,6 +5,8 @@ namespace clanguml { namespace t00065 { struct R { A *a; + C c; + D d; }; } } \ No newline at end of file diff --git a/tests/test_cases.cc b/tests/test_cases.cc index 98f03746..0df23aa8 100644 --- a/tests/test_cases.cc +++ b/tests/test_cases.cc @@ -301,7 +301,9 @@ using namespace clanguml::test::matchers; #include "t00062/test_case.h" #include "t00063/test_case.h" #include "t00064/test_case.h" +#if defined(ENABLE_CXX_STD_20_TEST_CASES) #include "t00065/test_case.h" +#endif /// /// Sequence diagram tests diff --git a/tests/test_cases.yaml b/tests/test_cases.yaml index 58189119..15593dec 100644 --- a/tests/test_cases.yaml +++ b/tests/test_cases.yaml @@ -189,6 +189,9 @@ test_cases: - name: t00064 title: Template type list test case description: + - name: t00065 + title: Class diagram with packages from directory structure + description: Sequence diagrams: - name: t20001 title: Basic sequence diagram test case