public void EqualsTargetTypeSameValue()
        {
            var type1 = CreateEqualsInterface <ITypeReference>("type name");
            var type2 = CreateEqualsInterface <ITypeReference>("type name");
            var type3 = CreateEqualsInterface <ITypeReference>("other type name");

            Assert.True(type1.Object.Equals(type2.Object));
            Assert.False(type1.Object.Equals(type3.Object));
            Assert.True(object.Equals(type1.Object, type2.Object));

            var value = UsedNamespaceOrType.CreateType(type1.Object, "alias");
            var unit  = EqualityUnit
                        .Create(value)
                        .WithEqualValues(
                value,
                UsedNamespaceOrType.CreateType(type1.Object, "alias"),
                UsedNamespaceOrType.CreateType(type2.Object, "alias"))
                        .WithNotEqualValues(
                UsedNamespaceOrType.CreateType(type1.Object, "different alias"),
                UsedNamespaceOrType.CreateType(type2.Object, "different alias"),
                UsedNamespaceOrType.CreateType(type3.Object, "alias"),
                UsedNamespaceOrType.CreateNamespace(new Mock <INamespace>().Object));

            RunAll(unit);
        }
示例#2
0
        public void EqualsNamespaceAndAssembly()
        {
            var assembly1 = CreateEqualsInterface <IAssemblyReference>("assembly");
            var assembly2 = CreateEqualsInterface <IAssemblyReference>("assembly");
            var assembly3 = CreateEqualsInterface <IAssemblyReference>("other assembly");
            var ns1       = CreateEqualsInterface <INamespace>("namespace");
            var ns2       = CreateEqualsInterface <INamespace>("namespace");
            var ns3       = CreateEqualsInterface <INamespace>("other namespace");

            var value = UsedNamespaceOrType.CreateNamespace(ns1.Object, assembly1.Object);
            var unit  = EqualityUnit
                        .Create(value)
                        .WithEqualValues(
                value,
                UsedNamespaceOrType.CreateNamespace(ns1.Object, assembly1.Object),
                UsedNamespaceOrType.CreateNamespace(ns1.Object, assembly2.Object),
                UsedNamespaceOrType.CreateNamespace(ns2.Object, assembly1.Object)
                )
                        .WithNotEqualValues(
                UsedNamespaceOrType.CreateExternAlias("alias"),
                UsedNamespaceOrType.CreateNamespace(
                    ns1.Object,
                    new Mock <IAssemblyReference>(MockBehavior.Strict).Object
                    ),
                UsedNamespaceOrType.CreateNamespace(ns3.Object)
                );

            RunAll(unit);
        }
示例#3
0
        public void EqualsNamespace()
        {
            var ns1 = CreateEqualsInterface <INamespace>("namespace");
            var ns2 = CreateEqualsInterface <INamespace>("namespace");
            var ns3 = CreateEqualsInterface <INamespace>("other namespace");

            var value = UsedNamespaceOrType.CreateNamespace(ns1.Object);
            var unit  = EqualityUnit
                        .Create(value)
                        .WithEqualValues(
                value,
                UsedNamespaceOrType.CreateNamespace(ns1.Object),
                UsedNamespaceOrType.CreateNamespace(ns2.Object)
                )
                        .WithNotEqualValues(
                UsedNamespaceOrType.CreateExternAlias("alias"),
                UsedNamespaceOrType.CreateNamespace(
                    ns1.Object,
                    CreateEqualsInterface <IAssemblyReference>("a").Object
                    ),
                UsedNamespaceOrType.CreateNamespace(ns3.Object)
                );

            RunAll(unit);
        }
        public void EqualsTargetTypeSameObject()
        {
            var ref1 = CreateEqualsInterface <ITypeReference>("ref1");
            var ref2 = CreateEqualsInterface <ITypeReference>("ref2");

            var value = UsedNamespaceOrType.CreateType(ref1.Object, "alias");
            var unit  = EqualityUnit
                        .Create(value)
                        .WithEqualValues(
                value,
                UsedNamespaceOrType.CreateType(ref1.Object, "alias"))
                        .WithNotEqualValues(
                UsedNamespaceOrType.CreateNamespace(new Mock <INamespace>().Object),
                UsedNamespaceOrType.CreateType(ref2.Object, "alias"),
                UsedNamespaceOrType.CreateType(ref1.Object, "different alias"));

            RunAll(unit);
        }