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); }
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()); }