public void Ctor_CorrectDefaultState() { MainViewModel vm = new MainViewModelBuilder() .WithPersistence(new InMemoryPersistence()) .Build(); Assert.IsNotNull(vm.CurrentStatement); Assert.AreEqual(1, vm.CurrentNumber); Assert.IsTrue(vm.IsStatementEmpty); }
public void CanSaveStatement_ChangeCurrentStatement_ReturnsExpectedResult(string statement, bool expectedResult) { MainViewModel vm = new MainViewModelBuilder() .WithPersistence(FilledPersistence()) .Build(); vm.CurrentNumber = 1; vm.CurrentStatement.Text = statement; Assert.AreEqual(expectedResult, vm.CanSaveStatement); }
public void CanSaveAndRemoveStatement_ReturnsExpectedResult(int statementNumber, bool expectedResult) { MainViewModel vm = new MainViewModelBuilder() .WithPersistence(FilledPersistence()) .Build(); vm.CurrentNumber = statementNumber; Assert.AreEqual(expectedResult, vm.CanSaveStatement); Assert.AreEqual(expectedResult, vm.CanRemoveStatement); }
public void Save_SaveOnPersistenceWasCalled() { var persist = new InMemoryPersistence(); MainViewModel vm = new MainViewModelBuilder() .WithPersistence(persist) .Build(); vm.SaveDb(); Assert.IsTrue(persist.SaveWasCalled); }
public void CanAddStatement_ReturnsExpectedResult(int statementNumber, string text, bool expectedResult) { MainViewModel vm = new MainViewModelBuilder() .WithPersistence(FilledPersistence()) .Build(); vm.CurrentNumber = statementNumber; vm.CurrentStatement.Text = text; Assert.AreEqual(expectedResult, vm.CanAddStatement); }
public void CopyShouldCopyCurrentStatementToClipboard(string text) { var vm = new MainViewModelBuilder() .DependenciesNoMatter() .Build(); vm.CurrentStatement.Text = text; vm.Copy(); Assert.AreEqual(text, Clipboard.GetText()); }
public void PasteShouldPasteSomeInputTextToCurrentStatement(string text) { var vm = new MainViewModelBuilder() .DependenciesNoMatter() .Build(); Clipboard.SetText(text); vm.Paste(); Assert.AreEqual(text, vm.CurrentStatement.Text); }
public void StartGame_OpensUpGameViewModel() { var winMock = new WindowManagerMock(); var vm = new MainViewModelBuilder() .WithPersistence(FilledPersistence()) .WithWindowManager(winMock) .Build(); vm.StartGame(); Assert.IsInstanceOf <GameViewModel>(winMock.PassedRootModel); }
public void CutShouldCopyToClipboardAndCutSomeInputText(string text) { var vm = new MainViewModelBuilder() .DependenciesNoMatter() .Build(); vm.CurrentStatement.Text = text; vm.Cut(); Assert.AreEqual(text, Clipboard.GetText()); Assert.IsEmpty(vm.CurrentStatement.Text); }
public void OpenDb_DialogReturnsTrue_SaveCalledOnPersistence() { var dialogMock = new DialogServiceMock(); var persist = new InMemoryPersistence(); var vm = new MainViewModelBuilder() .WithPersistence(persist) .WithDialogService(dialogMock) .Build(); vm.OpenDb(); Assert.IsTrue(persist.LoadWasCalled); Assert.AreEqual(1, vm.CurrentNumber); }
public void SaveDbAs_DialogReturnsTrue_SaveCalledOnPersistence() { var dialogMock = new DialogServiceMock(); var persist = new InMemoryPersistence(); var vm = new MainViewModelBuilder() .WithPersistence(persist) .WithDialogService(dialogMock) .Build(); vm.SaveDbAs(); Assert.IsTrue(persist.SaveWasCalled); Assert.IsTrue(dialogMock.SaveFileDialogWasCalled); }
public void SaveStatement_UpdatesPersistenceAndIncrementsCurrentNumber() { var persist = FilledPersistence(); var vm = new MainViewModelBuilder() .WithPersistence(persist) .Build(); const string newText = "NextText"; vm.CurrentStatement.Text = newText; vm.SaveStatement(); Assert.AreEqual(newText, persist[0].Text); Assert.AreEqual(2, vm.CurrentNumber); }
public void AddStatement_SomeStatement_AddsToPersistence() { var persist = new InMemoryPersistence(); var vm = new MainViewModelBuilder() .WithPersistence(persist) .Build(); vm.CurrentStatement.Text = "Text"; vm.AddStatement(); Assert.AreEqual(2, vm.CurrentNumber); Assert.AreEqual(1, persist.Count); Assert.IsEmpty(vm.CurrentStatement.Text); Assert.IsFalse(vm.CurrentStatement.IsTrue); }
public void NewDb_DialogReturnsTrue_SaveCalledOnPersistenceAndVmIsInCorrectState() { var dialog = new DialogServiceMock(); var persist = new InMemoryPersistence(); var vm = new MainViewModelBuilder() .WithPersistence(persist) .WithDialogService(dialog) .Build(); vm.NewDb(); Assert.IsTrue(persist.SaveWasCalled); Assert.IsTrue(dialog.SaveFileDialogWasCalled); Assert.AreEqual(1, vm.CurrentNumber); Assert.IsTrue(vm.IsStatementEmpty); Assert.IsFalse(vm.CurrentStatement.IsTrue); }
public void RemoveStatement_RemovesFromPersistenceAndDecrementsCurrentNumber() { var persist = FilledPersistence(); var vm = new MainViewModelBuilder() .WithPersistence(persist) .Build(); vm.CurrentNumber = 5; vm.RemoveStatement(); Assert.AreEqual(4, persist.Count); Assert.AreEqual(4, vm.CurrentNumber); vm.RemoveStatement(); vm.RemoveStatement(); vm.RemoveStatement(); vm.RemoveStatement(); Assert.AreEqual(0, persist.Count); Assert.AreEqual(1, vm.CurrentNumber); }