Пример #1
0
        public void TestThatRemoveInactiveChildrenRemovesInactiveChildren()
        {
            var activeFoodGroup1 = MockRepository.GenerateMock <IFoodGroup>();

            activeFoodGroup1.Stub(m => m.IsActive)
            .Return(true)
            .Repeat.Any();
            var activeFoodGroup2 = MockRepository.GenerateMock <IFoodGroup>();

            activeFoodGroup2.Stub(m => m.IsActive)
            .Return(true)
            .Repeat.Any();
            var activeFoodGroup3 = MockRepository.GenerateMock <IFoodGroup>();

            activeFoodGroup3.Stub(m => m.IsActive)
            .Return(true)
            .Repeat.Any();
            var inactiveFoodGroup1 = MockRepository.GenerateMock <IFoodGroup>();

            inactiveFoodGroup1.Stub(m => m.IsActive)
            .Return(false)
            .Repeat.Any();
            var inactiveFoodGroup2 = MockRepository.GenerateMock <IFoodGroup>();

            inactiveFoodGroup2.Stub(m => m.IsActive)
            .Return(false)
            .Repeat.Any();
            var inactiveFoodGroup3 = MockRepository.GenerateMock <IFoodGroup>();

            inactiveFoodGroup3.Stub(m => m.IsActive)
            .Return(false)
            .Repeat.Any();

            var foodGroup = new MyFoodGroup
            {
                Children = new List <IFoodGroup>
                {
                    activeFoodGroup1,
                    inactiveFoodGroup1,
                    activeFoodGroup2,
                    inactiveFoodGroup2,
                    activeFoodGroup3,
                    inactiveFoodGroup3
                }
            };

            Assert.That(foodGroup, Is.Not.Null);
            Assert.That(foodGroup.Children, Is.Not.Null);
            Assert.That(foodGroup.Children, Is.Not.Empty);
            Assert.That(foodGroup.Children.Count(), Is.EqualTo(6));

            foodGroup.RemoveInactiveChildren();
            Assert.That(foodGroup.Children, Is.Not.Null);
            Assert.That(foodGroup.Children, Is.Not.Empty);
            Assert.That(foodGroup.Children.Count(), Is.EqualTo(3));
            Assert.That(foodGroup.Children.Contains(activeFoodGroup1), Is.True);
            Assert.That(foodGroup.Children.Contains(activeFoodGroup2), Is.True);
            Assert.That(foodGroup.Children.Contains(activeFoodGroup2), Is.True);
        }
Пример #2
0
        public void TestThatRemoveInactiveChildrenDoesNotCallRemoveInactiveChildrenOnInactiveChildrens()
        {
            var activeFoodGroup1 = MockRepository.GenerateMock <IFoodGroup>();

            activeFoodGroup1.Stub(m => m.IsActive)
            .Return(true)
            .Repeat.Any();
            var activeFoodGroup2 = MockRepository.GenerateMock <IFoodGroup>();

            activeFoodGroup2.Stub(m => m.IsActive)
            .Return(true)
            .Repeat.Any();
            var activeFoodGroup3 = MockRepository.GenerateMock <IFoodGroup>();

            activeFoodGroup3.Stub(m => m.IsActive)
            .Return(true)
            .Repeat.Any();
            var inactiveFoodGroup1 = MockRepository.GenerateMock <IFoodGroup>();

            inactiveFoodGroup1.Stub(m => m.IsActive)
            .Return(false)
            .Repeat.Any();
            var inactiveFoodGroup2 = MockRepository.GenerateMock <IFoodGroup>();

            inactiveFoodGroup2.Stub(m => m.IsActive)
            .Return(false)
            .Repeat.Any();
            var inactiveFoodGroup3 = MockRepository.GenerateMock <IFoodGroup>();

            inactiveFoodGroup3.Stub(m => m.IsActive)
            .Return(false)
            .Repeat.Any();

            var foodGroup = new MyFoodGroup
            {
                Children = new List <IFoodGroup>
                {
                    activeFoodGroup1,
                    inactiveFoodGroup1,
                    activeFoodGroup2,
                    inactiveFoodGroup2,
                    activeFoodGroup3,
                    inactiveFoodGroup3
                }
            };

            Assert.That(foodGroup, Is.Not.Null);
            Assert.That(foodGroup.Children, Is.Not.Null);
            Assert.That(foodGroup.Children, Is.Not.Empty);

            foodGroup.RemoveInactiveChildren();

            inactiveFoodGroup1.AssertWasNotCalled(m => m.RemoveInactiveChildren());
            inactiveFoodGroup2.AssertWasNotCalled(m => m.RemoveInactiveChildren());
            inactiveFoodGroup3.AssertWasNotCalled(m => m.RemoveInactiveChildren());
        }