public void TestThatRemoveInactiveFoodGroupsRemovesInactiveFoodGroups() { 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 dataProviderMock = DomainObjectMockBuilder.BuildDataProviderMock(); var foodGroupCollection = new FoodGroupCollection(new List <IFoodGroup> { activeFoodGroup1, inactiveFoodGroup1, activeFoodGroup2, inactiveFoodGroup2, activeFoodGroup3, inactiveFoodGroup3 }, dataProviderMock); Assert.That(foodGroupCollection, Is.Not.Null); Assert.That(foodGroupCollection, Is.Not.Empty); Assert.That(foodGroupCollection.Count, Is.EqualTo(6)); foodGroupCollection.RemoveInactiveFoodGroups(); Assert.That(foodGroupCollection, Is.Not.Null); Assert.That(foodGroupCollection, Is.Not.Empty); Assert.That(foodGroupCollection.Count, Is.EqualTo(3)); Assert.That(foodGroupCollection.Contains(activeFoodGroup1), Is.True); Assert.That(foodGroupCollection.Contains(activeFoodGroup2), Is.True); Assert.That(foodGroupCollection.Contains(activeFoodGroup3), Is.True); }
public void TestThatConstructorInitializeFoodGroupCollection() { var foodGroupMockCollection = DomainObjectMockBuilder.BuildFoodGroupMockCollection().ToArray(); var dataProviderMock = DomainObjectMockBuilder.BuildDataProviderMock(); var foodGroupCollection = new FoodGroupCollection(foodGroupMockCollection, dataProviderMock); Assert.That(foodGroupCollection, Is.Not.Null); Assert.That(foodGroupCollection.DataProvider, Is.Not.Null); Assert.That(foodGroupCollection.DataProvider, Is.EqualTo(dataProviderMock)); foreach (var foodGroupMock in foodGroupMockCollection) { Assert.That(foodGroupCollection.Contains(foodGroupMock), Is.True); } }
public void TestThatRemoveInactiveFoodGroupsDoesNotCallRemoveInactiveChildrenOnEachInactiveFoodGroup() { 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 dataProviderMock = DomainObjectMockBuilder.BuildDataProviderMock(); var foodGroupCollection = new FoodGroupCollection(new List <IFoodGroup> { activeFoodGroup1, inactiveFoodGroup1, activeFoodGroup2, inactiveFoodGroup2, activeFoodGroup3, inactiveFoodGroup3 }, dataProviderMock); Assert.That(foodGroupCollection, Is.Not.Null); Assert.That(foodGroupCollection, Is.Not.Empty); foodGroupCollection.RemoveInactiveFoodGroups(); inactiveFoodGroup1.AssertWasNotCalled(m => m.RemoveInactiveChildren()); inactiveFoodGroup2.AssertWasNotCalled(m => m.RemoveInactiveChildren()); inactiveFoodGroup3.AssertWasNotCalled(m => m.RemoveInactiveChildren()); }
/// <summary> /// Functionality which handles a query for getting the tree of food groups. /// </summary> /// <param name="query">Query for getting the tree of food groups.</param> /// <returns>Tree of food groups.</returns> public virtual TFoodGroupTreeView Query(FoodGroupTreeGetQuery query) { if (query == null) { throw new ArgumentNullException("query"); } var translationInfo = _systemDataRepository.Get <ITranslationInfo>(query.TranslationInfoIdentifier); var dataProvider = _systemDataRepository.DataProviderForFoodGroupsGet(); var foodGroups = _systemDataRepository.FoodGroupGetAllOnRoot() .Where(foodGroup => foodGroup.ForeignKeys != null && foodGroup.ForeignKeys.Any(foreignKey => foreignKey.DataProvider != null && foreignKey.DataProvider.Identifier == dataProvider.Identifier)) .ToList(); dataProvider.Translate(translationInfo.CultureInfo); var foodGroupCollection = new FoodGroupCollection(foodGroups, dataProvider); if (OnlyActive) { foodGroupCollection.RemoveInactiveFoodGroups(); } return(_foodWasteObjectMapper.Map <IFoodGroupCollection, TFoodGroupTreeView>(foodGroupCollection, translationInfo.CultureInfo)); }