Extended subclass filter test with template inheritance
This commit is contained in:
@@ -11,5 +11,6 @@ diagrams:
|
|||||||
include:
|
include:
|
||||||
subclasses:
|
subclasses:
|
||||||
- clanguml::t00039::A
|
- clanguml::t00039::A
|
||||||
|
- clanguml::t00039::ns3::F<T>
|
||||||
relationships:
|
relationships:
|
||||||
- inheritance
|
- inheritance
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
#include <string>
|
||||||
|
|
||||||
namespace clanguml::t00039 {
|
namespace clanguml::t00039 {
|
||||||
struct B {
|
struct B {
|
||||||
};
|
};
|
||||||
@@ -21,4 +23,23 @@ namespace ns2 {
|
|||||||
struct AAAA : public AAA {
|
struct AAAA : public AAA {
|
||||||
};
|
};
|
||||||
} // namespace ns2
|
} // namespace ns2
|
||||||
|
|
||||||
|
namespace ns3 {
|
||||||
|
template <typename T> struct F {
|
||||||
|
T *t;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T, typename M> struct FF : public F<T> {
|
||||||
|
M *m;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T, typename M> struct FE : public F<T> {
|
||||||
|
M *m;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T, typename M, typename N> struct FFF : public FF<T, M> {
|
||||||
|
N *n;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace ns3
|
||||||
} // namespace clanguml::t00039
|
} // namespace clanguml::t00039
|
||||||
|
|||||||
@@ -46,6 +46,11 @@ 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, IsClassTemplate("ns3::F", "T"));
|
||||||
|
REQUIRE_THAT(puml, IsClassTemplate("ns3::FF", "T,M"));
|
||||||
|
REQUIRE_THAT(puml, IsClassTemplate("ns3::FE", "T,M"));
|
||||||
|
REQUIRE_THAT(puml, IsClassTemplate("ns3::FFF", "T,M,N"));
|
||||||
|
|
||||||
save_puml(
|
save_puml(
|
||||||
"./" + config.output_directory() + "/" + diagram->name + ".puml", puml);
|
"./" + config.output_directory() + "/" + diagram->name + ".puml", puml);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user