Fixed friend class root namespace handling
This commit is contained in:
@@ -4,6 +4,13 @@ class A {
|
||||
class AA {
|
||||
};
|
||||
|
||||
class AAA {
|
||||
};
|
||||
|
||||
template <typename T> class AAAA {
|
||||
T t;
|
||||
};
|
||||
|
||||
namespace ns1 {
|
||||
|
||||
class A {
|
||||
@@ -26,6 +33,9 @@ class D : public ns1::ns2::A {
|
||||
class E : public ::A {
|
||||
};
|
||||
|
||||
class AAA {
|
||||
};
|
||||
|
||||
class R {
|
||||
public:
|
||||
A *a;
|
||||
@@ -33,6 +43,10 @@ public:
|
||||
ns1::ns2::A *ns1_ns2_a;
|
||||
::A *root_a;
|
||||
|
||||
friend ::AAA;
|
||||
// TODO:
|
||||
// template<typename T> friend class ::AAAA;
|
||||
|
||||
void foo(::AA &aa) { (void)aa; }
|
||||
};
|
||||
}
|
||||
|
||||
@@ -58,6 +58,12 @@ TEST_CASE("t00045", "[test-case][class]")
|
||||
|
||||
REQUIRE_THAT(puml, IsDependency(_A("ns1::ns2::R"), _A("AA")));
|
||||
|
||||
REQUIRE_THAT(puml, IsFriend<Public>(_A("ns1::ns2::R"), _A("AAA")));
|
||||
REQUIRE_THAT(
|
||||
puml, !IsFriend<Public>(_A("ns1::ns2::R"), _A("ns1::ns2::AAA")));
|
||||
// TODO:
|
||||
// REQUIRE_THAT(puml, IsFriend<Public>(_A("ns1::ns2::R"), _A("AAAA<T>")));
|
||||
|
||||
save_puml(
|
||||
"./" + config.output_directory() + "/" + diagram->name + ".puml", puml);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user