示例#1
0
        public void BusinessRepository_EditingEntries_ChangesAttributes()
        {
            //Arrange: Create a repository with one entry with a unique string attribute.
            BusinessRepository<MockBusinessUnit> collection = new BusinessRepository<MockBusinessUnit>();
            MockBusinessUnit unit = new MockBusinessUnit { attrOne = 1, attrTwo = "Identifier" };
            collection.Create(unit);
            int attrOne = unit.attrOne;

            //Act: Change the entry and update the repository to reflect
            unit = new MockBusinessUnit { attrOne = 2, attrTwo = "Identifier" };
            collection.Update(unit);

            //Assert: The first entry will have an attribute of two.
            Assert.AreEqual(attrOne, 1);
            Assert.AreEqual(collection.ToArray()[0].attrOne, 2);
        }
示例#2
0
        public void BusinessUnit_TwoIdentical_AreEquivilant()
        {
            //Arrange: Two business equivilant units are created
            MockBusinessUnit alpha = new MockBusinessUnit { attrOne = 1, attrTwo = "One", attrThree = 1 };
            MockBusinessUnit beta = new MockBusinessUnit { attrOne = 2, attrTwo = "One", attrThree = 2 };

            //Act: Compare the two via equivilance
            bool equal = alpha.Equivilant(beta);

            //Assert: The two are equal
            Assert.AreEqual(equal, true);
        }
示例#3
0
        public void BusinessUnit_TwoIdenticalPolymorphs_AreNotEquivilant()
        {
            //Arrange: Two business identical polymorphic units are created
            IBusinessUnit normal = new MockBusinessUnit { attrOne = 1, attrTwo = "1", attrThree = 1 };
            IBusinessUnit polymorph = new MockPolymorphicBusinessUnit { attrOne = 1, attrTwo = "1", attrThree = 1 };

            //Act: Compare the two via equivilance
            bool equal = normal.Equivilant(polymorph);

            //Assert: The two are not equal.
            Assert.AreEqual(equal, false);
        }
示例#4
0
        public void BusinessUnit_TwoDifferent_AreNotEquivilant()
        {
            //Arrange: Two business different units are created.
            MockBusinessUnit alpha = new MockBusinessUnit { attrOne = 1, attrTwo = "One", attrThree = 1 };
            MockBusinessUnit beta = new MockBusinessUnit { attrOne = 2, attrTwo = "Two", attrThree = 2 };

            //Act: Compare the two via equivilance
            bool equal = alpha.Equivilant(beta);

            //Assert: The two are equal
            Assert.AreEqual(equal, false);
        }
示例#5
0
        public void BusinessRepository_RemovingNonExistantEntry_DoesNotDecreaseSize()
        {
            //Arrange: Create a repository with one entry with a unique string attribute.
            BusinessRepository<MockBusinessUnit> collection = new BusinessRepository<MockBusinessUnit>();
            MockBusinessUnit unit = new MockBusinessUnit { attrTwo = "Identifier" };
            collection.Create(unit);
            int Size_Before = collection.Count;

            //Act: remove the added entry from the repository
            collection.Delete(new MockBusinessUnit { attrTwo = "Is not stored"});

            //Assert: the size has not changed
            Assert.AreEqual(collection.Count, Size_Before);
        }
示例#6
0
        public void BusinessRepository_RemovingExistingPolymorph_DoesNotDecreaseSize()
        {
            //Arrange: Create a repository with one entry with a unique string attribute.
            BusinessRepository<MockBusinessUnit> collection = new BusinessRepository<MockBusinessUnit>();
            MockBusinessUnit unit = new MockBusinessUnit { attrTwo = "Identifier" };
            collection.Create(unit);
            int Size_Before = collection.Count;

            //Act: remove a polymorphic entry which would be considered business equivilant
            collection.Delete(new MockPolymorphicBusinessUnit { attrTwo = "Identifier" });

            //Assert: the size has not changed
            Assert.AreEqual(collection.Count, Size_Before);
        }
示例#7
0
        public void BusinessRepository_RemovingEntry_DecreasesSize()
        {
            //Arrange: Create a repository with one entry with a unique string attribute.
            BusinessRepository<MockBusinessUnit> collection = new BusinessRepository<MockBusinessUnit>();
            MockBusinessUnit unit = new MockBusinessUnit { attrTwo = "Identifier" };
            collection.Create(unit);
            Assert.AreEqual(collection.Count, 1);

            //Act: remove the added entry from the repository
            collection.Delete(unit);

            //Assert: the size is now at zero
            Assert.AreEqual(collection.Count, 0);
        }