Implemented package dependency test case

This commit is contained in:
Bartek Kryza
2022-01-24 19:59:59 +01:00
parent 7defaee37f
commit 4aedc6e330
4 changed files with 331 additions and 41 deletions

View File

@@ -1,15 +1,98 @@
#include <map>
#include <memory>
#include <vector>
namespace clanguml {
namespace t30002 {
namespace A::AA::AAA {
namespace A::AA {
namespace A1 {
struct CA {
};
}
namespace B::BB::BBB {
struct CBA {
A::AA::AAA::CA *ca_;
namespace A2 {
struct CB {
};
}
namespace A3 {
struct CC {
};
}
namespace A4 {
struct CD {
};
}
namespace A5 {
struct CE {
};
}
namespace A6 {
struct CF {
};
}
namespace A7 {
struct CG {
};
}
namespace A8 {
struct CH {
};
}
namespace A9 {
struct CI {
};
}
namespace A10 {
struct CJ {
};
}
namespace A11 {
struct CK {
};
}
namespace A12 {
struct CL {
};
}
namespace A13 {
struct CM {
};
}
}
namespace B::BB::BBB {
struct CBA : public A::AA::A6::CF {
A::AA::A1::CA *ca_;
A::AA::A2::CB cb_;
std::shared_ptr<A::AA::A3::CC> cc_;
std::map<std::string, std::unique_ptr<A::AA::A4::CD>> cd_;
void ce(const std::vector<A::AA::A5::CE> /*ce_*/) { }
std::shared_ptr<A::AA::A7::CG> cg() { return {}; }
template <typename T>
void ch(std::map<T, std::shared_ptr<A::AA::A8::CH>> & /*ch_*/)
{
}
template <typename T> std::map<T, std::shared_ptr<A::AA::A9::CI>> ci()
{
return {};
}
};
void cj(std::unique_ptr<A::AA::A10::CJ> /*cj_*/) { }
std::unique_ptr<A::AA::A11::CK> ck() { return {}; }
template <typename T>
void cl(std::map<T, std::shared_ptr<A::AA::A12::CL>> & /*ch_*/)
{
}
template <typename T> std::map<T, std::shared_ptr<A::AA::A13::CM>> cm()
{
return {};
}
}
} // namespace t30002
} // namespace clanguml

View File

@@ -46,13 +46,10 @@ TEST_CASE("t30002", "[test-case][package]")
REQUIRE_THAT(puml, StartsWith("@startuml"));
REQUIRE_THAT(puml, EndsWith("@enduml\n"));
REQUIRE_THAT(puml, Contains("component [A]"));
REQUIRE_THAT(puml, Contains("component [AA]"));
REQUIRE_THAT(puml, Contains("component [AAA]"));
REQUIRE_THAT(puml, Contains("component [B]"));
REQUIRE_THAT(puml, Contains("component [BB]"));
REQUIRE_THAT(puml, Contains("component [BBB]"));
REQUIRE_THAT(puml, Contains("component [A1]"));
REQUIRE_THAT(puml, Contains("component [A2]"));
REQUIRE_THAT(puml, Contains("component [A3]"));
REQUIRE_THAT(puml, Contains("component [A12]"));
// REQUIRE_THAT(puml, IsDependency(_A("BBB"), _A("AAA")));