protected override IEnumerable <(QualifiedElement sample, IDiscriminatedElement expected)> GenerateParentSample()
        {
            var expected = new NameSpaceElement(new PhysicalStorage(PathA));
            var sample   = new QualifiedElement(expected);

            yield return(sample, expected);
        }
        GenerateGetAncestorsSample()
        {
            var ns     = new NameSpaceElement(new PhysicalStorage(PathA));
            var q      = new QualifiedElement(ns);
            var sample = new IdentityElement(q, "Identity");

            yield return(sample, new IDiscriminatedElement[] { q, ns });
        protected override IEnumerable <(QualifiedElement sample, IQualified expected)> GenerateQualifiedNameSample()
        {
            var sample = new QualifiedElement();

            _ = new IdentityElement(sample, ScopeCategories.Public, IdentityCategories.Namespace, "Foo");
            _ = new IdentityElement(sample, ScopeCategories.Public, IdentityCategories.Namespace, "Bar");

            yield return(sample, sample);

            var ns = new NameSpaceElement(new PhysicalStorage(PathA));
            var q  = new QualifiedElement(ns);

            _ = new IdentityElement(q, "Upper");

            ns = new NameSpaceElement(ns);
            q  = new QualifiedElement(ns);
            _  = new IdentityElement(q, "Bottom");

            var expected = new QualifiedElement();

            _ = new IdentityElement(expected, ScopeCategories.Public, IdentityCategories.Namespace, "Upper");
            _ = new IdentityElement(expected, ScopeCategories.Public, IdentityCategories.Namespace, "Bottom");

            yield return(q, expected);
        }
Esempio n. 4
0
        GenerateIdentitiesSample()
        {
            var sample   = new QualifiedElement();
            var expected = new[]
            {
                new IdentityElement(sample, ScopeCategories.Public, IdentityCategories.Namespace, "Hoge"),
                new IdentityElement(sample, ScopeCategories.Public, IdentityCategories.Namespace, "Piyo")
            };

            yield return(sample, expected);

            var storage = new PhysicalStorage(PathA);
            var ns      = new NameSpaceElement(storage);

            sample   = new QualifiedElement(ns);
            expected = new[] { new IdentityElement(sample, "Foo"), new IdentityElement(sample, "Bar") };

            yield return(sample, expected);


            ns       = new NameSpaceElement(ns);
            sample   = new QualifiedElement(ns);
            expected = new[] { new IdentityElement(sample, "System"), new IdentityElement(sample, "Collections") };

            yield return(sample, expected);
        }
        GenerateChildrenSample()
        {
            var list = new List <IDiscriminatedElement>();

            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new InterfaceElement(ns, ScopeCategories.Public, false, false);

            list.Add(AttachName(sample, "ISample"));

            IDiscriminatedElement tmp = new InterfaceElement(sample, ScopeCategories.Public, false, false);

            AttachName(tmp, "IInner");
            list.Add(tmp);

            tmp = new StructElement(sample, ScopeCategories.Public, false, false);
            AttachName(tmp, "StructInner");
            list.Add(tmp);

            tmp = new ClassElement(sample, ScopeCategories.Public, false, false, false, false, false);
            AttachName(tmp, "ReferenceInner");
            list.Add(tmp);

            yield return(sample, list);
        }
        protected override IEnumerable <(EnumElement sample, IDiscriminatedElement expected)> GenerateParentSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            var sample = new EnumElement(ns, ScopeCategories.Public);

            yield return(sample, ns);
        }
        protected override IEnumerable <InterfaceElement> GenerateIdentityErrorGetterSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            yield return(new InterfaceElement(ns, ScopeCategories.Public, false, false));
        }
        GeneratePhysicalStorageSample()
        {
            var storage = new PhysicalStorage(PathA);
            var ns      = new NameSpaceElement(storage);
            var q       = new QualifiedElement(ns);
            var sample  = new IdentityElement(q, "Name");

            yield return(sample, storage);
        }
        public void NoAddTest()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new EnumElement(ns, ScopeCategories.Public);

            Assert.Throws <ArgumentException>(() => _ = new EnumElement(sample, ScopeCategories.Public));
        }
        protected override IEnumerable <(QualifiedElement sample, IDiscriminatedElement errSample)> GenerateErrSample()
        {
            var sample = new QualifiedElement();
            IDiscriminatedElement err =
                new IdentityElement(new QualifiedElement(), ScopeCategories.Public, IdentityCategories.Namespace, "Err");

            yield return(sample, err);

            err = new NameSpaceElement(new PhysicalStorage(PathA));
            yield return(sample, err);
        }
        GeneratePhysicalStorageSample()
        {
            var expected = new PhysicalStorage(PathA);
            var ns       = new NameSpaceElement(expected);

            AttachName(ns, NameSpaceA);

            var sample = new DelegateElement(ns, ScopeCategories.Public, false);

            yield return(sample, expected);
        }
        protected override IEnumerable <(DelegateElement sample, IDiscriminatedElement expected)> GenerateParentSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new DelegateElement(ns, ScopeCategories.Public, false);

            AttachName(sample, "Hoge");

            yield return(sample, ns);
        }
        public void InvalidRegisterChildTest()
        {
            var ns     = new NameSpaceElement(new PhysicalStorage(PathA));
            var sample = new DelegateElement(ns, ScopeCategories.Public, false);

            AttachName(sample, "BinOp");

            Assert.Throws <ArgumentException>(() =>
                                              _ = new InterfaceElement(sample, ScopeCategories.Public, false, false));
            Assert.Throws <ArgumentException>(() =>
                                              _ = new ClassElement(sample, ScopeCategories.Public, false, false, false, false, false));
        }
        protected override IEnumerable <(IdentityElement x, IdentityElement y)> GeneratePhysicallyInEqualitySample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));
            var q  = new QualifiedElement(ns);
            var x  = new IdentityElement(q, "Foo");

            ns = new NameSpaceElement(new PhysicalStorage(PathB));
            q  = new QualifiedElement(ns);
            var y = new IdentityElement(q, "Foo");

            yield return(x, y);
        }
        public void InvalidChildTest()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new StructElement(ns, ScopeCategories.Public, false, false);

            AttachName(sample, "Hoge");

            Assert.Throws <ArgumentException>(() => new NameSpaceElement(sample));
        }
Esempio n. 16
0
        GenerateDescendantsSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new EnumElement(ns, ScopeCategories.Public);

            AttachName(sample, "Sample");

            yield return(sample, Array.Empty <IDiscriminatedElement>());
        }
        protected override IEnumerable <(InterfaceElement sample, IDiscriminatedElement errSample)> GenerateErrSample()
        {
            var ns        = new NameSpaceElement(new PhysicalStorage(PathA));
            var q         = AttachName(ns, NameSpaceA);
            var errSample = new IdentityElement(q, "Err");

            var sample = new InterfaceElement(ns, ScopeCategories.Public, false, false);

            AttachName(sample, "Name");

            yield return(sample, errSample);
        }
Esempio n. 18
0
                      registerAction)> GenerateRegisterChildSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new EnumElement(ns, ScopeCategories.Public);

            AttachName(sample, "Sample");

            yield return(sample, Array.Empty <IDiscriminatedElement>(), dmy => { });
        }
Esempio n. 19
0
        protected override IEnumerable <(EnumElement sample, IDiscriminatedElement errSample)> GenerateErrSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new EnumElement(ns, ScopeCategories.Public);

            AttachName(sample, "Sample");

            yield return(sample, ns);
        }
        GenerateDescendantsSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new DelegateElement(ns, ScopeCategories.Public, false);

            var(expected, id) = AttachName(sample, "Hoge");

            yield return(sample, new[] { (IDiscriminatedElement)expected, (IDiscriminatedElement)id[0] });
        }
        protected override IEnumerable <(InterfaceElement sample, IDiscriminatedElement expected)> GenerateParentSample()
        {
            var expected = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(expected, NameSpaceA);

            var sample = new InterfaceElement(expected, ScopeCategories.Public, false, false);

            AttachName(sample, "ISome");


            yield return(sample, expected);
        }
        GeneratePhysicalStorageSample()
        {
            var expected = new PhysicalStorage(PathA);
            var ns       = new NameSpaceElement(expected);
            var qa       = new QualifiedElement(ns);

            yield return(qa, expected);

            ns = new NameSpaceElement(ns);
            qa = new QualifiedElement(ns);

            yield return(qa, expected);
        }
        GenerateGetAncestorsSample()
        {
            var ns     = new NameSpaceElement(new PhysicalStorage(PathA));
            var sample = new QualifiedElement(ns);

            yield return(sample, new[] { ns });

            var nsa = new NameSpaceElement(ns);

            sample = new QualifiedElement(nsa);

            yield return(sample, new[] { nsa, ns });
        }
        GenerateAggregateIdentitiesSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new DelegateElement(ns, ScopeCategories.Public, false);

            AttachName(sample, "Hoge");

            var expected = new Stack <(ScopeCategories, IdentityCategories, string)>();

            expected.Push((ScopeCategories.Public, IdentityCategories.Delegate, "Hoge"));

            yield return(sample, expected);
        }
        GenerateAggregateIdentitiesSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new InterfaceElement(ns, ScopeCategories.Internal, false, false);

            AttachName(sample, "ISample");

            var expected = new Stack <(ScopeCategories scope, IdentityCategories, string)>();

            expected.Push((ScopeCategories.Internal, IdentityCategories.Interface, "ISample"));

            yield return(sample, expected);
        }
                      registerAction)> GenerateRegisterChildSample()
        {
            var expected = new List <IDiscriminatedElement>();
            var ns       = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new DelegateElement(ns, ScopeCategories.Public, false);

            void act(DelegateElement elem)
            {
                expected.Add(AttachName(elem, "Hoge").Item1);
            }

            yield return(sample, expected, act);
        }
Esempio n. 27
0
        GenerateAggregateIdentitiesSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new EnumElement(ns, ScopeCategories.Public);

            AttachName(sample, "Sample");

            var stack = new Stack <(ScopeCategories, IdentityCategories, string)>();

            stack.Push((ScopeCategories.Public, IdentityCategories.Enum, "Sample"));

            yield return(sample, stack);
        }
        GeneratePhysicallyTransitiveSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));
            var q  = new QualifiedElement(ns);
            var x  = new IdentityElement(q, "Foo");

            ns = new NameSpaceElement(new PhysicalStorage(PathA));
            q  = new QualifiedElement(ns);
            var y = new IdentityElement(q, "Foo");

            ns = new NameSpaceElement(new PhysicalStorage(PathA));
            q  = new QualifiedElement(ns);
            var z = new IdentityElement(q, "Foo");

            yield return(x, y, z);
        }
Esempio n. 29
0
        protected override IEnumerable <(EnumElement sample, IQualified expected)> GenerateQualifiedNameSample()
        {
            var ns = new NameSpaceElement(new PhysicalStorage(PathA));

            AttachName(ns, NameSpaceA);

            var sample = new EnumElement(ns, ScopeCategories.Public);

            AttachName(sample, "Sample");

            var expected = new QualifiedElement();

            _ = new IdentityElement(expected, ScopeCategories.Public, IdentityCategories.Namespace, NameSpaceA);
            _ = new IdentityElement(expected, ScopeCategories.Public, IdentityCategories.Enum, "Sample");

            yield return(sample, expected);
        }
        GenerateLogicallyTransitiveSample()
        {
            var storage = new PhysicalStorage(PathA);
            var ns      = new NameSpaceElement(storage);
            var qx      = new QualifiedElement(ns);
            var x       = new IdentityElement(qx, "Hoge");

            ns = new NameSpaceElement(new PhysicalStorage(PathB));
            var qy = new QualifiedElement(ns);
            var y  = new IdentityElement(qy, "Hoge");

            ns = new NameSpaceElement(new PhysicalStorage(PathB));
            var qz = new QualifiedElement(ns);
            var z  = new IdentityElement(qz, "Hoge");

            yield return(x, y, z);
        }