public void WhenIUseEditableScreenCompositeObjectViewModel() { var initialPhones = new[] { 546, 432 }; var compositeModel = new CompositeEditableModel("Here", initialPhones); _compositeScenarioDataStore.Model = compositeModel; var mockMessageService = new FakeMessageService(); _compositeScenarioDataStore.MockMessageService = mockMessageService; var screenObjectViewModel = new TestEditableScreenCompositeObjectViewModel(mockMessageService, compositeModel); _compositeScenarioDataStore.SystemUnderTest = screenObjectViewModel; _commonScenarioDataStore.RootObject.ActivateItem(screenObjectViewModel); }
public void WhenModelIsChangedAndChangesAreAppliedAndModelIsChangedAndChangesAreCancelled_ThenCorrectModelIsDisplayed() { var initialPhones = new[] { 546, 432 }; var compositeModel = new CompositeEditableModel("Here", initialPhones); var stubMessageService = new FakeMessageService(); var rootObject = CreateRootObject(); var screenObjectViewModel = new TestEditableScreenCompositeObjectViewModel(stubMessageService, compositeModel); rootObject.ActivateItem(screenObjectViewModel); compositeModel.AddPhone(647); screenObjectViewModel.ApplyCommand.Execute(null); compositeModel.AddPhone(555); screenObjectViewModel.CancelChangesCommand.Execute(null); var phones = ((ICompositeEditableModel)compositeModel).Phones.ToArray(); var expectedPhones = new[] { 546, 432, 647 }; phones.Should().BeEquivalentTo(expectedPhones); }