Refactored sequence diagrams test cases (#266)
This commit is contained in:
@@ -27,93 +27,13 @@ TEST_CASE("t20017")
|
||||
REQUIRE(MessageOrder(src,
|
||||
{
|
||||
//
|
||||
// {Entrypoint{}, "t20017.cc", "tmain()"}, //
|
||||
{"t20017.cc", "include/t20017_a.h", "a3(int,int)"}, //
|
||||
{Entrypoint{}, "t20017.cc", "tmain()"}, //
|
||||
{"t20017.cc", "include/t20017_a.h", "a3(int,int)"}, //
|
||||
{"t20017.cc", "include/t20017_b.h", "b1(int,int)"}, //
|
||||
/* {"t20017.cc", "include/t20017_a.h", "a2(int,int)"}, //
|
||||
{"t20017.cc", "include/t20017_a.h", "a2(int,int)"}, //
|
||||
{"t20017.cc", "include/t20017_a.h", "a1(int,int)"}, //
|
||||
{"t20017.cc", "include/t20017_b.h", "b2<int>(int,int)"}, //
|
||||
{Exitpoint{}, "t20017.cc"}, //*/
|
||||
{Exitpoint{}, "t20017.cc"}, //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
// Check if all calls exist
|
||||
REQUIRE_THAT(src, HasEntrypoint(_A("t20017.cc"), "tmain()"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_a.h"), "a1(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_a.h"), "a2(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_a.h"), "a3(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_b.h"), "b1(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(
|
||||
_A("t20017.cc"), _A("include/t20017_b.h"), "b2<int>(int,int)"));
|
||||
REQUIRE_THAT(src, HasExitpoint(_A("t20017.cc")));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
const auto &t20017_cc = get_participant(j, "t20017.cc");
|
||||
|
||||
CHECK(t20017_cc.has_value());
|
||||
|
||||
CHECK(t20017_cc.value()["type"] == "file");
|
||||
CHECK(t20017_cc.value()["name"] == "t20017.cc");
|
||||
CHECK(t20017_cc.value()["display_name"] == "t20017.cc");
|
||||
|
||||
std::vector<int> messages = {
|
||||
FindMessage(j, File("t20017.cc"), File("include/t20017_a.h"),
|
||||
"a3(int,int)"),
|
||||
FindMessage(j, File("t20017.cc"), File("include/t20017_b.h"),
|
||||
"b1(int,int)"),
|
||||
FindMessage(j, File("t20017.cc"), File("include/t20017_a.h"),
|
||||
"a2(int,int)"),
|
||||
FindMessage(j, File("t20017.cc"), File("include/t20017_a.h"),
|
||||
"a1(int,int)"),
|
||||
FindMessage(j, File("t20017.cc"), File("include/t20017_b.h"),
|
||||
"b2<int>(int,int)")};
|
||||
|
||||
REQUIRE(std::is_sorted(messages.begin(), messages.end()));
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
using mermaid::HasEntrypoint;
|
||||
using mermaid::HasExitpoint;
|
||||
|
||||
REQUIRE_THAT(src, HasEntrypoint(_A("t20017.cc"), "tmain()"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_a.h"), "a1(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_a.h"), "a2(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_a.h"), "a3(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("t20017.cc"), _A("include/t20017_b.h"), "b1(int,int)"));
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(
|
||||
_A("t20017.cc"), _A("include/t20017_b.h"), "b2<int>(int,int)"));
|
||||
REQUIRE_THAT(src, HasExitpoint(_A("t20017.cc")));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd", src);
|
||||
}*/
|
||||
}
|
||||
@@ -32,7 +32,6 @@ TEST_CASE("t20023")
|
||||
{"A", "A", "a2()"}, //
|
||||
{"A", "A", "a3()"}, //
|
||||
{"A", "A", "a4()"}, //
|
||||
|
||||
}));
|
||||
});
|
||||
}
|
||||
@@ -26,83 +26,27 @@ TEST_CASE("t20030")
|
||||
CHECK_SEQUENCE_DIAGRAM(config, diagram, *model, [](const auto &src) {
|
||||
REQUIRE(MessageOrder(src,
|
||||
{
|
||||
//
|
||||
// "clanguml::t20030::tmain(int)"
|
||||
//
|
||||
{"tmain(int)", "magic()", ""}, //
|
||||
{"tmain(int)", "A", "A(int)"}, //
|
||||
{"tmain(int)", "A", "operator+=(int)"}, //
|
||||
{"A", "A", "add(int)"}, //
|
||||
{"tmain(bool,int)", "A", "A()"}, //
|
||||
// {"A", "A", "create()"}, //
|
||||
// {"tmain(bool,int)", "A", "A()"}, //
|
||||
// {"A", "A", "create()"}, //
|
||||
// {"tmain(bool,int)", "A", "operator+=(int)"},
|
||||
// //
|
||||
// {"A", "A", "add(int)"}, //
|
||||
// {"tmain(bool,int)", "A", "operator=(const A
|
||||
// &)"}, //
|
||||
// {"A", "A", "set(int)"}, //
|
||||
// {"tmain(bool,int)", "A", "value() const"} //
|
||||
|
||||
//
|
||||
// "clanguml::t20030::tmain(bool,int)"
|
||||
//
|
||||
{"tmain(bool,int)", "A", "A()"}, //
|
||||
{"A", "A", "create()"}, //
|
||||
{"tmain(bool,int)", "A", "A()"}, //
|
||||
{"A", "A", "create()"}, //
|
||||
{"tmain(bool,int)", "A", "operator+=(int)"}, //
|
||||
//
|
||||
{"A", "A", "add(int)"}, //
|
||||
{"tmain(bool,int)", "A", "operator=(const A &)"}, //
|
||||
{"A", "A", "set(int)"}, //
|
||||
{"tmain(bool,int)", "A", "value() const"} //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
// Check if all calls exist
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int)"), _A("magic()"), ""));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("A"), _A("A"), "create()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(int)"), _A("A"), "operator+=(int)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("A"), _A("A"), "add(int)"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"), "A()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(bool,int)"), _A("A"),
|
||||
"operator+=(int)")); REQUIRE_THAT(src, HasCall(_A("A"), _A("A"),
|
||||
"add(int)")); REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"),
|
||||
"operator=(const A &)")); REQUIRE_THAT(src, HasCall(_A("A"), _A("A"),
|
||||
"set(int)")); REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"),
|
||||
"value()"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int)"), _A("magic()"), ""));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("A"), _A("A"), "create()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(int)"), _A("A"), "operator+=(int)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("A"), _A("A"), "add(int)"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"), "A()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(bool,int)"), _A("A"),
|
||||
"operator+=(int)")); REQUIRE_THAT(src, HasCall(_A("A"), _A("A"),
|
||||
"add(int)")); REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"),
|
||||
"operator=(const A &)")); REQUIRE_THAT(src, HasCall(_A("A"), _A("A"),
|
||||
"set(int)")); REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"),
|
||||
"value()"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd",
|
||||
src);
|
||||
}*/
|
||||
}
|
||||
@@ -31,73 +31,16 @@ TEST_CASE("t20031")
|
||||
{"tmain(bool,int)", "execute(std::function<int ()>)", ""}, //
|
||||
{"tmain(bool,int)", "A", "value() const"} //
|
||||
}));
|
||||
REQUIRE(!HasMessage(src, {"A", "A", "create()"}));
|
||||
REQUIRE(!HasMessage(src, {"tmain(int)", "A", "operator+=(int)"}));
|
||||
REQUIRE(!HasMessage(src, {"tmain(bool,int)", "A", "A()"}));
|
||||
REQUIRE(!HasMessage(src, {"tmain(bool,int)", "A", "operator+=(int)"}));
|
||||
REQUIRE(!HasMessage(src, {"A", "A", "add(int)"}));
|
||||
REQUIRE(
|
||||
!HasMessage(src, {"tmain(bool,int)", "A", "operator=(const A &)"}));
|
||||
REQUIRE(!HasMessage(src, {"A", "A", "set(int)"}));
|
||||
REQUIRE(!HasMessage(src,
|
||||
{"tmain(bool,int)::(lambda ../../tests/t20031/t20031.cc:47:26)",
|
||||
"zero()", ""}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int)"), _A("magic()"), ""));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "create()"));
|
||||
REQUIRE_THAT(
|
||||
src, !HasCall(_A("tmain(int)"), _A("A"), "operator+=(int)"));
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "add(int)"));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("tmain(bool,int)"), _A("A"), "A()"));
|
||||
REQUIRE_THAT(
|
||||
src, !HasCall(_A("tmain(bool,int)"), _A("A"), "operator+=(int)"));
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "add(int)"));
|
||||
REQUIRE_THAT(src,
|
||||
!HasCall(_A("tmain(bool,int)"), _A("A"), "operator=(const A &)"));
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "set(int)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"), "value()"));
|
||||
REQUIRE_THAT(src,
|
||||
!HasCall(_A("tmain(bool,int)::(lambda "
|
||||
"../../tests/t20031/t20031.cc:47:26)"),
|
||||
_A("zero()"), ""));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int)"), _A("magic()"), ""));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "create()"));
|
||||
REQUIRE_THAT(
|
||||
src, !HasCall(_A("tmain(int)"), _A("A"), "operator+=(int)"));
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "add(int)"));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("tmain(bool,int)"), _A("A"), "A()"));
|
||||
REQUIRE_THAT(
|
||||
src, !HasCall(_A("tmain(bool,int)"), _A("A"), "operator+=(int)"));
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "add(int)"));
|
||||
REQUIRE_THAT(src,
|
||||
!HasCall(_A("tmain(bool,int)"), _A("A"), "operator=(const A &)"));
|
||||
REQUIRE_THAT(src, !HasCall(_A("A"), _A("A"), "set(int)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(bool,int)"), _A("A"), "value()"));
|
||||
REQUIRE_THAT(src,
|
||||
!HasCall(_A("tmain(bool,int)::(lambda "
|
||||
"../../tests/t20031/t20031.cc:47:26)"),
|
||||
_A("zero()"), ""));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd", src);
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
@@ -37,83 +37,10 @@ TEST_CASE("t20032")
|
||||
{"A", "B", "double", Response{}}, //
|
||||
{"B", "tmain(int,char **)", "double", Response{}}, //
|
||||
|
||||
{"tmain(int,char **)", "B", "b(const char *)"}, //
|
||||
{"B", "A", "a3(const char *)"}, //
|
||||
{"A", "B", "const char *", Response{}}, //
|
||||
{"tmain(int,char **)", "B", "b(const char *)"}, //
|
||||
{"B", "A", "a3(const char *)"}, //
|
||||
{"A", "B", "const char *", Response{}}, //
|
||||
{"B", "tmain(int,char **)", "const char *", Response{}} //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
// Check if all calls exist
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int,char **)"), _A("B"), "b(int)"));
|
||||
REQUIRE_THAT(
|
||||
src, HasResponse(_A("tmain(int,char **)"), _A("B"), "int"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a1(int)"));
|
||||
REQUIRE_THAT(src, HasResponse(_A("B"), _A("A"), "int"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(int,char **)"), _A("B"), "b(double)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2(double)"));
|
||||
REQUIRE_THAT(src, HasResponse(_A("B"), _A("A"), "double"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(int,char **)"), _A("B"), "b(const char *)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a3(const char *)"));
|
||||
REQUIRE_THAT(src, HasResponse(_A("B"), _A("A"), "const char *"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
std::vector<int> messages = {
|
||||
FindMessage(j, "tmain(int,char **)", "B", "b(int)", "int"),
|
||||
FindMessage(j, "B", "A", "a1(int)", "int"),
|
||||
FindMessage(j, "tmain(int,char **)", "B", "b(double)"),
|
||||
FindMessage(j, "B", "A", "a2(double)"),
|
||||
FindMessage(j, "tmain(int,char **)", "B", "b(const char *)"),
|
||||
FindMessage(j, "B", "A", "a3(const char *)")};
|
||||
|
||||
REQUIRE(std::is_sorted(messages.begin(), messages.end()));
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
using mermaid::HasResponse;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int,char **)"), _A("B"), "b(int)"));
|
||||
REQUIRE_THAT(
|
||||
src, HasResponse(_A("tmain(int,char **)"), _A("B"), "int"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a1(int)"));
|
||||
REQUIRE_THAT(src, HasResponse(_A("B"), _A("A"), "int"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(int,char **)"), _A("B"), "b(double)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2(double)"));
|
||||
REQUIRE_THAT(src, HasResponse(_A("B"), _A("A"), "double"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("tmain(int,char **)"), _A("B"), "b(const char *)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a3(const char *)"));
|
||||
REQUIRE_THAT(src, HasResponse(_A("B"), _A("A"), "const char *"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd", src);
|
||||
}*/
|
||||
}
|
||||
@@ -52,50 +52,4 @@ TEST_CASE("t20033")
|
||||
{"tmain()", "A", "a4()"} //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
// Check if all calls exist
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("A"), "a1()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCallInControlCondition(_A("tmain()"), _A("A"), "a2()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCallInControlCondition(_A("tmain()"), _A("A"), "a3()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCallInControlCondition(_A("tmain()"), _A("A"), "a4()"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
using mermaid::HasCallInControlCondition;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("A"), "a1()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCallInControlCondition(_A("tmain()"), _A("A"), "a2()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCallInControlCondition(_A("tmain()"), _A("A"), "a3()"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCallInControlCondition(_A("tmain()"), _A("A"), "a4()"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd",
|
||||
src);
|
||||
}*/
|
||||
}
|
||||
@@ -68,75 +68,7 @@ TEST_CASE("t20034")
|
||||
{"C", "C", "c2()"}, //
|
||||
{"C", "B", "b2()"}, //
|
||||
{"B", "A", "a2()"} //
|
||||
} //
|
||||
} //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
// Check if all calls exist
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("C"), "c3()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("C"), "c2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("C"), "c4()"));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("C"), _A("B"), "b3()"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name +
|
||||
".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
REQUIRE(HasMessageChain(j,
|
||||
{{"d2()", "c3()", "void"}, {"c3()", "c2()", "void"},
|
||||
{"c2()", "b2()", "void"}, {"b2()", "a2()",
|
||||
"void"}})); REQUIRE(HasMessageChain(j,
|
||||
{{"d2()", "c4()", "void"}, {"c4()", "b4()", "void"},
|
||||
{"b4()", "b2()", "void"}, {"b2()", "a2()",
|
||||
"void"}})); REQUIRE(HasMessageChain(j, {{"d2()", "a2()",
|
||||
"void"}})); REQUIRE(HasMessageChain(j,
|
||||
{{"d2()", "c1()", "void"}, {"c1()", "b1()", "void"},
|
||||
{"b1()", "a2()", "void"}}));
|
||||
REQUIRE(HasMessageChain(j,
|
||||
{{"d2()", "c2()", "void"}, {"c2()", "b2()", "void"},
|
||||
{"b2()", "a2()", "void"}}));
|
||||
|
||||
save_json(config.output_directory(), diagram->name +
|
||||
".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("C"), "c3()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("C"), "c2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("C"), "c4()"));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("C"), _A("B"), "b3()"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name +
|
||||
".mmd", src);
|
||||
}
|
||||
*/
|
||||
}
|
||||
@@ -32,46 +32,4 @@ TEST_CASE("t20035")
|
||||
{"b1(int)", "c(int)", ""} //
|
||||
}}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int,char **)"), _A("a(int)"),
|
||||
"")); REQUIRE_THAT(src, HasCall(_A("a(int)"), _A("b1(int)"), ""));
|
||||
REQUIRE_THAT(src, HasCall(_A("b1(int)"), _A("c(int)"), ""));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
REQUIRE(HasMessageChain(j,
|
||||
{{"tmain(int,char **)", "a(int)", "int"},
|
||||
{"a(int)", "b1(int)", "int"}, {"b1(int)", "c(int)",
|
||||
"int"}}));
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain(int,char **)"), _A("a(int)"),
|
||||
"")); REQUIRE_THAT(src, HasCall(_A("a(int)"), _A("b1(int)"), ""));
|
||||
REQUIRE_THAT(src, HasCall(_A("b1(int)"), _A("c(int)"), ""));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd",
|
||||
src);
|
||||
}
|
||||
*/
|
||||
}
|
||||
@@ -67,68 +67,4 @@ TEST_CASE("t20036")
|
||||
}, //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("C"), "c2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b1()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
REQUIRE(HasMessageChain(j,
|
||||
{{"c3()", "c2()", "void"}, {"c2()", "b2()", "void"},
|
||||
{"b2()", "a2()", "void"}}));
|
||||
REQUIRE(HasMessageChain(
|
||||
j, {{"c4()", "b2()", "void"}, {"b2()", "a2()", "void"}}));
|
||||
REQUIRE(HasMessageChain(j, {{"d3()", "a2()", "void"}}));
|
||||
REQUIRE(HasMessageChain(j,
|
||||
{{"d1()", "c2()", "void"}, {"c2()", "b2()", "void"},
|
||||
{"b2()", "a2()", "void"}}));
|
||||
REQUIRE(HasMessageChain(
|
||||
j, {{"c1()", "b1()", "void"}, {"b1()", "a2()", "void"}}));
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("C"), "c2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b2()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("D"), _A("A"), "a2()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("C"), _A("B"), "b1()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("B"), _A("A"), "a2()"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd",
|
||||
src);
|
||||
}*/
|
||||
}
|
||||
@@ -53,107 +53,4 @@ TEST_CASE("t20038")
|
||||
{"B", "A", "aaa()"}, //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "b()"));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("tmain()"), _A("B"), "bb()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "bbb()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "bbbb()"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasMessageComment(_A("tmain()"),
|
||||
"This comment should be rendered only\\n"
|
||||
"once"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("tmain()"), _A("add_impl<double>(double,double)"),
|
||||
""));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasMessageComment(_A("tmain()"), "What is 2 \\+ 2\\?"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
!HasMessageComment(
|
||||
_A("tmain()"), "This is specific for some_other_diagram"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasMessageComment(_A("tmain()"), "Calling
|
||||
B::bbbbb\\(\\)"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "bbbbb()"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasMessageComment(_A("tmain()"), "This is a conditional
|
||||
operator"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
using mermaid::HasCallInControlCondition;
|
||||
using mermaid::HasMessageComment;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "b()"));
|
||||
|
||||
REQUIRE_THAT(src, !HasCall(_A("tmain()"), _A("B"), "bb()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "bbb()"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "bbbb()"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasMessageComment(_A("tmain()"),
|
||||
"This comment should be rendered only<br/>"
|
||||
"once"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("tmain()"), _A("add_impl<double>(double,double)"),
|
||||
""));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasMessageComment(_A("tmain()"), "What is 2 \\+ 2\\?"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
!HasMessageComment(
|
||||
_A("tmain()"), "This is specific for some_other_diagram"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasMessageComment(_A("tmain()"), "Calling
|
||||
B::bbbbb\\(\\)"));
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("B"), "bbbbb()"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
!HasMessageComment(
|
||||
_A("tmain()"), "This is specific for some_other_diagram"));
|
||||
|
||||
REQUIRE_THAT(
|
||||
src, HasMessageComment(_A("tmain()"), "Calling
|
||||
B::bbbbb\\(\\)"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd",
|
||||
src);
|
||||
}
|
||||
*/
|
||||
}
|
||||
@@ -31,54 +31,8 @@ TEST_CASE("t20039")
|
||||
{"R", "A<int>", "a(int)"}, //
|
||||
{"R", "A<int_vec_t>", "a(int_vec_t)"}, //
|
||||
{"R", "A<string_vec_t>", "a(string_vec_t)"}, //
|
||||
{"R", "A<int_map_t>", "a(int_map_t)"}, //
|
||||
{"R", "A<int_map_t>", "a(int_map_t)"}, //
|
||||
{"R", "A<string_map_t>", "a(string_map_t)"} //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
// Check if all calls exist
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("R"), "run()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("R"), _A("A<int>"), "a(int)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("R"), _A("A<int_vec_t>"), "a(int_vec_t)"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("R"), _A("A<string_vec_t>"), "a(string_vec_t)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("R"), _A("A<int_map_t>"), "a(int_map_t)"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("R"), _A("A<string_map_t>"), "a(string_map_t)"));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src, HasCall(_A("tmain()"), _A("R"), "run()"));
|
||||
REQUIRE_THAT(src, HasCall(_A("R"), _A("A<int>"), "a(int)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("R"), _A("A<int_vec_t>"), "a(int_vec_t)"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("R"), _A("A<string_vec_t>"), "a(string_vec_t)"));
|
||||
REQUIRE_THAT(src, HasCall(_A("R"), _A("A<int_map_t>"), "a(int_map_t)"));
|
||||
REQUIRE_THAT(
|
||||
src, HasCall(_A("R"), _A("A<string_map_t>"), "a(string_map_t)"));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd", src);
|
||||
}*/
|
||||
}
|
||||
@@ -45,66 +45,4 @@ TEST_CASE("t20040")
|
||||
{"print<int>(int)", "print()", ""}, //
|
||||
}));
|
||||
});
|
||||
/*
|
||||
{
|
||||
auto src = generate_sequence_puml(diagram, *model);
|
||||
AliasMatcher _A(src);
|
||||
|
||||
REQUIRE_THAT(src, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(src, EndsWith("@enduml\n"));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("tmain()"),
|
||||
_A("print<int,double,std::string>(int,double,std::string)"),
|
||||
""));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("print<int,double,std::string>(int,double,std::string)"),
|
||||
_A("print<double,std::string>(double,std::string)"), ""));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("print<double,std::string>(double,std::string)"),
|
||||
_A("print<std::string>(std::string)"), ""));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("print<std::string>(std::string)"), _A("print()"),
|
||||
""));
|
||||
|
||||
save_puml(config.output_directory(), diagram->name + ".puml", src);
|
||||
}
|
||||
|
||||
{
|
||||
auto j = generate_sequence_json(diagram, *model);
|
||||
|
||||
using namespace json;
|
||||
|
||||
save_json(config.output_directory(), diagram->name + ".json", j);
|
||||
}
|
||||
|
||||
{
|
||||
auto src = generate_sequence_mermaid(diagram, *model);
|
||||
|
||||
mermaid::SequenceDiagramAliasMatcher _A(src);
|
||||
using mermaid::HasCall;
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("tmain()"),
|
||||
_A("print<int,double,std::string>(int,double,std::string)"),
|
||||
""));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("print<int,double,std::string>(int,double,std::string)"),
|
||||
_A("print<double,std::string>(double,std::string)"), ""));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("print<double,std::string>(double,std::string)"),
|
||||
_A("print<std::string>(std::string)"), ""));
|
||||
|
||||
REQUIRE_THAT(src,
|
||||
HasCall(_A("print<std::string>(std::string)"), _A("print()"),
|
||||
""));
|
||||
|
||||
save_mermaid(config.output_directory(), diagram->name + ".mmd",
|
||||
src);
|
||||
}*/
|
||||
}
|
||||
@@ -49,8 +49,7 @@ TEST_CASE("t20046")
|
||||
"t20046.cc:19:34)",
|
||||
"operator()(auto &&) const"}, //
|
||||
{"tmain()::(lambda t20046.cc:19:9)::(lambda t20046.cc:19:34)",
|
||||
"a3(int)", ""}
|
||||
|
||||
"a3(int)", ""} //
|
||||
}));
|
||||
});
|
||||
}
|
||||
@@ -33,7 +33,6 @@ TEST_CASE("t20047")
|
||||
{"tmain()", "a4(int)", ""}, //
|
||||
{"tmain()", "a5(int)", ""}, //
|
||||
{"tmain()", "a6(int)", ""}, //
|
||||
|
||||
}));
|
||||
});
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
1635
tests/test_cases.h
1635
tests/test_cases.h
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user