Example #1
0
            public override bool Equals(object otherObject)
            {
                if (ReferenceEquals(null, otherObject))
                {
                    return(false);
                }
                if (ReferenceEquals(this, otherObject))
                {
                    return(true);
                }
                if (!(otherObject is SomeEntityClass))
                {
                    return(false);
                }
                SomeEntityClass otherSomeEntityClass = otherObject as SomeEntityClass;

                return(this.entityId == otherSomeEntityClass.entityId);
            }
Example #2
0
        public void EntityObjectParameterHashingTests()
        {
            SomeEntityClass someEntityObject1A = new SomeEntityClass {
                IntProperty = 1, StringProperty = "1"
            };
            SomeEntityClass someEntityObject1B = new SomeEntityClass {
                IntProperty = 1, StringProperty = "1"
            };
            SomeEntityClass someEntityObject1C = new SomeEntityClass {
                IntProperty = 1, StringProperty = "1"
            };
            SomeEntityClass someEntityObject2 = new SomeEntityClass {
                IntProperty = 2, StringProperty = "2"
            };
            SomeEntityClass someEntityObject3 = new SomeEntityClass {
                IntProperty = 3, StringProperty = "3"
            };

            someEntityObject1A.ChildrenProperty = new List <SomeEntityClass> {
                someEntityObject2, someEntityObject3
            };
            someEntityObject1B.ChildrenProperty = new List <SomeEntityClass> {
                someEntityObject2, someEntityObject3
            };
            someEntityObject1C.ChildrenProperty = new List <SomeEntityClass> {
                someEntityObject2, someEntityObject3, someEntityObject2, someEntityObject3
            };

            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1A)));
            // NB! Different entity objects are never equal
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1B)));

            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1C)));
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject2)));
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject3)));

            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject2), Is.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject2)));
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject2), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject1A)));
        }
        public void EntityObjectParameterHashingTests()
        {
            SomeEntityClass someEntityObject1A = new SomeEntityClass { IntProperty = 1, StringProperty = "1" };
            SomeEntityClass someEntityObject1B = new SomeEntityClass { IntProperty = 1, StringProperty = "1" };
            SomeEntityClass someEntityObject1C = new SomeEntityClass { IntProperty = 1, StringProperty = "1" };
            SomeEntityClass someEntityObject2 = new SomeEntityClass { IntProperty = 2, StringProperty = "2" };
            SomeEntityClass someEntityObject3 = new SomeEntityClass { IntProperty = 3, StringProperty = "3" };
            someEntityObject1A.ChildrenProperty = new List<SomeEntityClass> { someEntityObject2, someEntityObject3 };
            someEntityObject1B.ChildrenProperty = new List<SomeEntityClass> { someEntityObject2, someEntityObject3 };
            someEntityObject1C.ChildrenProperty = new List<SomeEntityClass> { someEntityObject2, someEntityObject3, someEntityObject2, someEntityObject3 };

            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1A)));
            // NB! Different entity objects are never equal
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1B)));

            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1C)));
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject2)));
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject3)));

            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject2), Is.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject2)));
            Assert.That(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject2), Is.Not.EqualTo(MemoizerHelper.CreateParameterHash(someEntityObject1A, someEntityObject1A)));
        }