public void UpdateCollectionAssignsBrushToEachItem() { // Arrange var brush = Brushes.MidnightBlue; var service = Mock.Of<IProjectBrushService>(p => p.GetBrush( It.IsAny<string>(), It.IsAny<IUserPreferences>()) == brush); var preferences = Mock.Of<IUserPreferences>(); var updateReaction = new AssignProjectColoursReaction(service); var metadataCollection = new[] { CreateDocumentMetadata(), CreateDocumentMetadata(), CreateDocumentMetadata() }; var view = new ListCollectionView(metadataCollection); // Act updateReaction.UpdateCollection(view, preferences); // Assert Assert.That(metadataCollection[0].ProjectBrush, Is.EqualTo(brush)); Assert.That(metadataCollection[1].ProjectBrush, Is.EqualTo(brush)); Assert.That(metadataCollection[2].ProjectBrush, Is.EqualTo(brush)); }
public void UpdateCollectionAssignsBrushToEachItemInCollectionViewSource() { // Arrange var brush = Brushes.MidnightBlue; var service = Mock.Of <IProjectBrushService>(p => p.GetBrush( It.IsAny <string>(), It.IsAny <IUserPreferences>()) == brush); var preferences = Mock.Of <IUserPreferences>(); var updateReaction = new AssignProjectColoursReaction(service); var metadataCollection = new[] { CreateDocumentMetadata(), CreateDocumentMetadata(), CreateDocumentMetadata() }; var view = new ListCollectionView(metadataCollection) { Filter = obj => { // Use IsActive as indication of being included in filter // in this test var metadata = (DocumentMetadata)obj; metadata.IsActive = metadata == metadataCollection[0]; return(metadata.IsActive); } }; // Act updateReaction.UpdateCollection(view, preferences); // Assert Assert.That(metadataCollection[0].ProjectBrush, Is.EqualTo(brush)); Assert.That(metadataCollection[1].ProjectBrush, Is.EqualTo(brush)); Assert.That(metadataCollection[2].ProjectBrush, Is.EqualTo(brush)); Assert.IsTrue(metadataCollection[0].IsActive); Assert.IsFalse(metadataCollection[1].IsActive); Assert.IsFalse(metadataCollection[2].IsActive); }