Refactored relationship discovery algorithm

This commit is contained in:
Bartek Kryza
2021-03-04 22:45:25 +01:00
parent 59ea5758cf
commit b6858d2c61
3 changed files with 64 additions and 85 deletions

View File

@@ -36,6 +36,21 @@ class J {
class K {
};
class L {
};
class M {
};
class N {
};
class NN {
};
class NNN {
};
template <typename T> class custom_container {
public:
std::vector<T> data;
@@ -59,6 +74,10 @@ public:
J j[10];
K *k[20];
std::vector<std::pair<L, M>> lm;
std::tuple<N, NN, NNN> ns;
};
}
}

View File

@@ -57,7 +57,11 @@ TEST_CASE("Test t00006", "[unit-test]")
REQUIRE_THAT(puml, IsClass("I"));
REQUIRE_THAT(puml, IsClass("J"));
REQUIRE_THAT(puml, IsClass("K"));
REQUIRE_THAT(puml, IsClass("R"));
REQUIRE_THAT(puml, IsClass("L"));
REQUIRE_THAT(puml, IsClass("M"));
REQUIRE_THAT(puml, IsClass("N"));
REQUIRE_THAT(puml, IsClass("NN"));
REQUIRE_THAT(puml, IsClass("NNN"));
REQUIRE_THAT(puml, IsComposition("R", "A", "a"));
REQUIRE_THAT(puml, IsAssociation("R", "B", "b"));
@@ -70,6 +74,11 @@ TEST_CASE("Test t00006", "[unit-test]")
REQUIRE_THAT(puml, IsAssociation("R", "I", "i"));
REQUIRE_THAT(puml, IsComposition("R", "J", "j"));
REQUIRE_THAT(puml, IsAssociation("R", "K", "k"));
REQUIRE_THAT(puml, IsComposition("R", "L", "lm"));
REQUIRE_THAT(puml, IsComposition("R", "M", "lm"));
REQUIRE_THAT(puml, IsComposition("R", "N", "ns"));
REQUIRE_THAT(puml, IsComposition("R", "NN", "ns"));
REQUIRE_THAT(puml, IsComposition("R", "NNN", "ns"));
save_puml(
"./" + config.output_directory + "/" + diagram->name + ".puml", puml);