Refactored include and exclude filters
This commit is contained in:
@@ -31,13 +31,13 @@ TEST_CASE("t00002", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->exclude().namespaces.size() == 0);
|
||||
|
||||
REQUIRE(diagram->should_include({"clanguml", "t00002"}, "A"));
|
||||
REQUIRE(!diagram->should_include({"std"}, "vector"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00002_class");
|
||||
|
||||
REQUIRE(model.should_include({"clanguml", "t00002"}, "A"));
|
||||
REQUIRE(!model.should_include({"std"}, "vector"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
|
||||
@@ -28,11 +28,10 @@ TEST_CASE("t00003", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->exclude().namespaces.size() == 0);
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00003::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00003_class");
|
||||
REQUIRE(model.should_include(std::string("clanguml::t00003::A")));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -27,13 +27,13 @@ TEST_CASE("t00004", "[test-case][class]")
|
||||
REQUIRE(diagram->include().namespaces.size() == 1);
|
||||
REQUIRE(diagram->exclude().namespaces.size() == 0);
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00004::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00004::A::AA"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00004::A:::AAA"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00004_class");
|
||||
REQUIRE(!model.should_include("std::vector"));
|
||||
REQUIRE(model.should_include("clanguml::t00004::A"));
|
||||
REQUIRE(model.should_include("clanguml::t00004::A::AA"));
|
||||
REQUIRE(model.should_include("clanguml::t00004::A:::AAA"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,14 +24,13 @@ TEST_CASE("t00005", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00005_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00005::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00005::B"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00005::C"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00005::D"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00005_class");
|
||||
REQUIRE(model.should_include("clanguml::t00005::A"));
|
||||
REQUIRE(model.should_include("clanguml::t00005::B"));
|
||||
REQUIRE(model.should_include("clanguml::t00005::C"));
|
||||
REQUIRE(model.should_include("clanguml::t00005::D"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,16 +24,16 @@ TEST_CASE("t00006", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00006_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00006::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00006::B"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00006::C"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00006::D"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00006::E"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00006_class");
|
||||
|
||||
REQUIRE(model.should_include("clanguml::t00006::A"));
|
||||
REQUIRE(model.should_include("clanguml::t00006::B"));
|
||||
REQUIRE(model.should_include("clanguml::t00006::C"));
|
||||
REQUIRE(model.should_include("clanguml::t00006::D"));
|
||||
REQUIRE(model.should_include("clanguml::t00006::E"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
|
||||
@@ -24,12 +24,6 @@ TEST_CASE("t00007", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00007_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00007::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00007::B"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00007::C"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00007::D"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00007::E"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00007_class");
|
||||
|
||||
@@ -24,9 +24,6 @@ TEST_CASE("t00008", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00008_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00008::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00008::B"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00008_class");
|
||||
|
||||
@@ -24,9 +24,6 @@ TEST_CASE("t00009", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00009_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00009::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00009::B"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00009_class");
|
||||
|
||||
@@ -24,9 +24,6 @@ TEST_CASE("t00010", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00010_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00010::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00010::B"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00010_class");
|
||||
|
||||
@@ -24,9 +24,6 @@ TEST_CASE("t00011", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00011_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00011::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00011::B"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00011_class");
|
||||
|
||||
@@ -24,9 +24,6 @@ TEST_CASE("t00012", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00012_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00012::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00012::B"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00012_class");
|
||||
|
||||
@@ -24,13 +24,13 @@ TEST_CASE("t00013", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00013_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00013::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00013::B"));
|
||||
REQUIRE(diagram->should_include("ABCD::F"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00013_class");
|
||||
REQUIRE(model.should_include("clanguml::t00013::A"));
|
||||
REQUIRE(model.should_include("clanguml::t00013::B"));
|
||||
REQUIRE(model.should_include("ABCD::F"));
|
||||
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00014", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00014_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00014::S"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00014_class");
|
||||
REQUIRE(model.should_include("clanguml::t00014::S"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00015", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00015_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00015::ns1::ns2::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00015_class");
|
||||
REQUIRE(model.should_include("clanguml::t00015::ns1::ns2::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00016", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00016_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00016::is_numeric"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00016_class");
|
||||
REQUIRE(model.should_include("clanguml::t00016::is_numeric"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,6 @@ TEST_CASE("t00017", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00017_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00017::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00017::B"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00017::C"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00017::D"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00017_class");
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00018", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00018_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00018::widget"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00018_class");
|
||||
REQUIRE(model.should_include("clanguml::t00018::widget"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,6 @@ TEST_CASE("t00019", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00019_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00019::Layer1"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00019::Layer2"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00019::Layer3"));
|
||||
REQUIRE(diagram->should_include("clanguml::t00019::Base"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00019_class");
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00020", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00020_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00020::ProductA"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00020_class");
|
||||
REQUIRE(model.should_include("clanguml::t00020::ProductA"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,10 @@ TEST_CASE("t00021", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00021_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00021::Visitor"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00021_class");
|
||||
REQUIRE(model.should_include("clanguml::t00021::Visitor"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00022", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00022_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00022::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00022_class");
|
||||
REQUIRE(model.should_include("clanguml::t00022::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00023", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00023_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00023::Visitor"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00023_class");
|
||||
REQUIRE(model.should_include("clanguml::t00023::Visitor"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00024", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00024_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00024::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00024_class");
|
||||
REQUIRE(model.should_include("clanguml::t00024::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00025", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00025_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00025::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00025_class");
|
||||
REQUIRE(model.should_include("clanguml::t00025::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00026", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00026_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00026::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00026_class");
|
||||
REQUIRE(model.should_include("clanguml::t00026::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00027", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00027_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00027::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00027_class");
|
||||
REQUIRE(model.should_include("clanguml::t00027::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00028", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00028_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00028::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00028_class");
|
||||
REQUIRE(model.should_include("clanguml::t00028::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00029", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00029_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00029::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00029_class");
|
||||
REQUIRE(model.should_include("clanguml::t00029::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00030", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00030_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00030::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00030_class");
|
||||
REQUIRE(model.should_include("clanguml::t00030::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00031", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00031_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00031::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00031_class");
|
||||
REQUIRE(model.should_include("clanguml::t00031::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,11 @@ TEST_CASE("t00032", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00032_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00032::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00032_class");
|
||||
REQUIRE(model.should_include("clanguml::t00032::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,10 @@ TEST_CASE("t00033", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00033_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00033::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00033_class");
|
||||
REQUIRE(model.should_include("clanguml::t00033::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,10 @@ TEST_CASE("t00034", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00034_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00034::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00034_class");
|
||||
REQUIRE(model.should_include("clanguml::t00034::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
@@ -24,11 +24,10 @@ TEST_CASE("t00035", "[test-case][class]")
|
||||
|
||||
REQUIRE(diagram->name == "t00035_class");
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t00035::A"));
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00035_class");
|
||||
REQUIRE(model.should_include("clanguml::t00035::A"));
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
15
tests/t00039/.clang-uml
Normal file
15
tests/t00039/.clang-uml
Normal file
@@ -0,0 +1,15 @@
|
||||
compilation_database_dir: ..
|
||||
output_directory: puml
|
||||
diagrams:
|
||||
t00039_class:
|
||||
type: class
|
||||
generate_packages: false
|
||||
glob:
|
||||
- ../../tests/t00039/t00039.cc
|
||||
using_namespace:
|
||||
- clanguml::t00039
|
||||
include:
|
||||
subclasses:
|
||||
- clanguml::t00039::A
|
||||
relationships:
|
||||
- inheritance
|
||||
24
tests/t00039/t00039.cc
Normal file
24
tests/t00039/t00039.cc
Normal file
@@ -0,0 +1,24 @@
|
||||
namespace clanguml::t00039 {
|
||||
struct B {
|
||||
};
|
||||
|
||||
namespace ns1 {
|
||||
struct BB : public B {
|
||||
};
|
||||
} // namespace ns1
|
||||
|
||||
struct A {
|
||||
};
|
||||
|
||||
struct AA : public A {
|
||||
};
|
||||
|
||||
struct AAA : public AA {
|
||||
B *b;
|
||||
};
|
||||
|
||||
namespace ns2 {
|
||||
struct AAAA : public AAA {
|
||||
};
|
||||
} // namespace ns2
|
||||
} // namespace clanguml::t00039
|
||||
48
tests/t00039/test_case.h
Normal file
48
tests/t00039/test_case.h
Normal file
@@ -0,0 +1,48 @@
|
||||
/**
|
||||
* tests/t00039/test_case.cc
|
||||
*
|
||||
* Copyright (c) 2021-2022 Bartek Kryza <bkryza@gmail.com>
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
TEST_CASE("t00039", "[test-case][class]")
|
||||
{
|
||||
auto [config, db] = load_config("t00039");
|
||||
|
||||
auto diagram = config.diagrams["t00039_class"];
|
||||
|
||||
REQUIRE(diagram->name == "t00039_class");
|
||||
REQUIRE(diagram->generate_packages() == false);
|
||||
|
||||
auto model = generate_class_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t00039_class");
|
||||
|
||||
auto puml = generate_class_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
REQUIRE_THAT(puml, StartsWith("@startuml"));
|
||||
REQUIRE_THAT(puml, EndsWith("@enduml\n"));
|
||||
|
||||
REQUIRE_THAT(puml, IsClass(_A("A")));
|
||||
REQUIRE_THAT(puml, IsClass(_A("AA")));
|
||||
REQUIRE_THAT(puml, IsClass(_A("AAA")));
|
||||
REQUIRE_THAT(puml, IsClass(_A("ns2::AAAA")));
|
||||
|
||||
REQUIRE_THAT(puml, !IsClass(_A("B")));
|
||||
REQUIRE_THAT(puml, !IsClass(_A("ns1::BB")));
|
||||
|
||||
save_puml(
|
||||
"./" + config.output_directory() + "/" + diagram->name + ".puml", puml);
|
||||
}
|
||||
@@ -22,16 +22,16 @@ TEST_CASE("t20001", "[test-case][sequence]")
|
||||
|
||||
auto diagram = config.diagrams["t20001_sequence"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t20001::A"));
|
||||
REQUIRE(!diagram->should_include("clanguml::t20001::detail::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t20001_sequence");
|
||||
|
||||
auto model = generate_sequence_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t20001_sequence");
|
||||
|
||||
REQUIRE(model.should_include("clanguml::t20001::A"));
|
||||
REQUIRE(!model.should_include("clanguml::t20001::detail::C"));
|
||||
REQUIRE(!model.should_include("std::vector"));
|
||||
|
||||
auto puml = generate_sequence_puml(diagram, model);
|
||||
|
||||
REQUIRE_THAT(puml, StartsWith("@startuml"));
|
||||
|
||||
@@ -22,16 +22,16 @@ TEST_CASE("t30001", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30001_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30001::A"));
|
||||
REQUIRE(!diagram->should_include("clanguml::t30001::detail::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30001_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
REQUIRE(model.name() == "t30001_package");
|
||||
|
||||
REQUIRE(model.should_include("clanguml::t30001::A"));
|
||||
REQUIRE(!model.should_include("clanguml::t30001::detail::C"));
|
||||
REQUIRE(!model.should_include("std::vector"));
|
||||
|
||||
auto puml = generate_package_puml(diagram, model);
|
||||
AliasMatcher _A(puml);
|
||||
|
||||
|
||||
@@ -22,10 +22,6 @@ TEST_CASE("t30002", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30002_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30002::A"));
|
||||
REQUIRE(!diagram->should_include("clanguml::t30002::detail::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30002_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
@@ -22,10 +22,6 @@ TEST_CASE("t30003", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30003_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30003::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t30003::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30003_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
@@ -22,10 +22,6 @@ TEST_CASE("t30004", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30004_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30004::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t30004::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30004_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
@@ -22,10 +22,6 @@ TEST_CASE("t30005", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30005_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30005::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t30005::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30005_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
@@ -22,10 +22,6 @@ TEST_CASE("t30006", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30006_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30006::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t30006::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30006_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
@@ -22,10 +22,6 @@ TEST_CASE("t30007", "[test-case][package]")
|
||||
|
||||
auto diagram = config.diagrams["t30007_package"];
|
||||
|
||||
REQUIRE(diagram->should_include("clanguml::t30007::A"));
|
||||
REQUIRE(diagram->should_include("clanguml::t30007::C"));
|
||||
REQUIRE(!diagram->should_include("std::vector"));
|
||||
|
||||
REQUIRE(diagram->name == "t30007_package");
|
||||
|
||||
auto model = generate_package_diagram(db, diagram);
|
||||
|
||||
@@ -66,7 +66,7 @@ clanguml::sequence_diagram::model::diagram generate_sequence_diagram(
|
||||
diagram_config, diagram_visitor>(db, diagram->name,
|
||||
dynamic_cast<clanguml::config::sequence_diagram &>(*diagram));
|
||||
|
||||
return model;
|
||||
return std::move(model);
|
||||
}
|
||||
|
||||
clanguml::class_diagram::model::diagram generate_class_diagram(
|
||||
@@ -84,7 +84,7 @@ clanguml::class_diagram::model::diagram generate_class_diagram(
|
||||
diagram_config, diagram_visitor>(
|
||||
db, diagram->name, dynamic_cast<diagram_config &>(*diagram));
|
||||
|
||||
return model;
|
||||
return std::move(model);
|
||||
}
|
||||
|
||||
clanguml::package_diagram::model::diagram generate_package_diagram(
|
||||
@@ -197,6 +197,7 @@ using namespace clanguml::test::matchers;
|
||||
#include "t00036/test_case.h"
|
||||
#include "t00037/test_case.h"
|
||||
#include "t00038/test_case.h"
|
||||
#include "t00039/test_case.h"
|
||||
|
||||
//
|
||||
// Sequence diagram tests
|
||||
|
||||
@@ -111,6 +111,9 @@ test_cases:
|
||||
- name: t00038
|
||||
title: Template instantiation with unexposed nested templates
|
||||
description:
|
||||
- name: t00039
|
||||
title: Subclass class diagram filter test
|
||||
description:
|
||||
Sequence diagrams:
|
||||
- name: t20001
|
||||
title: Basic sequence diagram test case
|
||||
|
||||
Reference in New Issue
Block a user