Extended class diagram subclasses test with multiple inheritance
This commit is contained in:
4
Makefile
4
Makefile
@@ -80,6 +80,10 @@ init_compile_commands: debug
|
|||||||
clang-format:
|
clang-format:
|
||||||
docker run --rm -v $(CURDIR):/root/sources bkryza/clang-format-check:1.3
|
docker run --rm -v $(CURDIR):/root/sources bkryza/clang-format-check:1.3
|
||||||
|
|
||||||
|
.PHONY: format
|
||||||
|
clang-format:
|
||||||
|
docker run --rm -v $(CURDIR):/root/sources bkryza/clang-format-check:1.3
|
||||||
|
|
||||||
.PHONY: iwyu_fixes
|
.PHONY: iwyu_fixes
|
||||||
iwyu_fixes: debug
|
iwyu_fixes: debug
|
||||||
python3 $(shell which iwyu_tool.py) -p debug > debug/iwyu.out
|
python3 $(shell which iwyu_tool.py) -p debug > debug/iwyu.out
|
||||||
|
|||||||
@@ -11,6 +11,9 @@ diagrams:
|
|||||||
include:
|
include:
|
||||||
subclasses:
|
subclasses:
|
||||||
- clanguml::t00039::A
|
- clanguml::t00039::A
|
||||||
|
- clanguml::t00039::C
|
||||||
|
- clanguml::t00039::D
|
||||||
|
- clanguml::t00039::E
|
||||||
- clanguml::t00039::ns3::F<T>
|
- clanguml::t00039::ns3::F<T>
|
||||||
relationships:
|
relationships:
|
||||||
- inheritance
|
- inheritance
|
||||||
@@ -4,11 +4,29 @@ namespace clanguml::t00039 {
|
|||||||
struct B {
|
struct B {
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct C {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct D {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct E {
|
||||||
|
};
|
||||||
|
|
||||||
namespace ns1 {
|
namespace ns1 {
|
||||||
struct BB : public B {
|
struct BB : public B {
|
||||||
};
|
};
|
||||||
} // namespace ns1
|
} // namespace ns1
|
||||||
|
|
||||||
|
struct CD : public C, public D {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct DE : public D, public E {
|
||||||
|
};
|
||||||
|
|
||||||
|
struct CDE : public C, public D, public E {
|
||||||
|
};
|
||||||
|
|
||||||
struct A {
|
struct A {
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -46,6 +46,17 @@ TEST_CASE("t00039", "[test-case][class]")
|
|||||||
REQUIRE_THAT(puml, !IsClass(_A("B")));
|
REQUIRE_THAT(puml, !IsClass(_A("B")));
|
||||||
REQUIRE_THAT(puml, !IsClass(_A("ns1::BB")));
|
REQUIRE_THAT(puml, !IsClass(_A("ns1::BB")));
|
||||||
|
|
||||||
|
REQUIRE_THAT(puml, IsClass(_A("C")));
|
||||||
|
REQUIRE_THAT(puml, IsClass(_A("D")));
|
||||||
|
REQUIRE_THAT(puml, IsClass(_A("E")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("C"), _A("CD")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("D"), _A("CD")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("D"), _A("DE")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("E"), _A("DE")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("C"), _A("CDE")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("D"), _A("CDE")));
|
||||||
|
REQUIRE_THAT(puml, IsBaseClass(_A("E"), _A("CDE")));
|
||||||
|
|
||||||
REQUIRE_THAT(puml, IsClassTemplate("ns3::F", "T"));
|
REQUIRE_THAT(puml, IsClassTemplate("ns3::F", "T"));
|
||||||
REQUIRE_THAT(puml, IsClassTemplate("ns3::FF", "T,M"));
|
REQUIRE_THAT(puml, IsClassTemplate("ns3::FF", "T,M"));
|
||||||
REQUIRE_THAT(puml, IsClassTemplate("ns3::FE", "T,M"));
|
REQUIRE_THAT(puml, IsClassTemplate("ns3::FE", "T,M"));
|
||||||
|
|||||||
Reference in New Issue
Block a user