public void ShouldCreateOneSessionSubViewModelPerLogOnRefresh() { var expecteds = Fix.SomeLogs(2); WhenViewModelIsRefreshedWithSessions(expecteds); var actuals = _uut.Sessions.Select(session => session.Log); CollectionAssert.AreEqual(expecteds, actuals); }
public void ShouldNotSetSelectedSessionsAfterRefreshIfNoSelectionExistedBefore() { var sessions = Fix.SomeLogs(4); WhenViewModelIsRefreshedWithSessions(sessions); var eventInvoked = false; _uut.OnPropertyChanged(m => m.SelectedSessions, selection => eventInvoked = true); WhenViewModelIsRefreshedWithSessions(sessions); Assert.IsFalse(eventInvoked); }
public void ShouldInvokeSessionSelectionEventIfSessionsWereSelectedPreviously(int numberOfSelections) { var sessions = Fix.SomeLogs(4); WhenViewModelIsRefreshedWithSessions(sessions); var expectedSelection = _uut.Sessions.Take(numberOfSelections).ToList(); _uut.SelectedSessions = expectedSelection; ICollection <SessionViewModel> actualSelection = null; _uut.OnPropertyChanged(m => m.SelectedSessions, selection => actualSelection = selection); WhenViewModelIsRefreshedWithSessions(sessions); CollectionAssert.AreEquivalent(expectedSelection, actualSelection); }