public void DeleteCurrent_NoLongerInList() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AddNew(); _model.CurrentISO = "pt"; _model.AddNew(); _model.CurrentISO = "de"; _model.AddNew(); _model.CurrentISO = "th"; var writingSystems = new List <string>(); for (_model.CurrentIndex = _model.WritingSystemCount - 1; _model.HasCurrentSelection; _model.CurrentIndex--) { writingSystems.Insert(0, _model.CurrentISO); } string deletedWritingSystem = writingSystems[1]; _model.CurrentIndex = 1; _model.DeleteCurrent(); for (_model.CurrentIndex = _model.WritingSystemCount - 1; _model.HasCurrentSelection; _model.CurrentIndex--) { Assert.AreNotEqual(deletedWritingSystem, _model.CurrentISO); } } }
public void DeleteCurrent_DataInProjectAndNoOneListeningToUserChoiceEvent_OkToDeleteIsFired() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; //just need a listener to verifiy that it did fire _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.DeleteCurrent(); Assert.That(e.AskIfOkToDeleteWritingSystemFired, Is.True); } }
public void DeleteCurrent_DataInProject_AskUserWhatToDoWithDataInWritingSystemToBeDeletedFires() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Nothing; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.DeleteCurrent(); Assert.That(e.AskUserWhatToDoWithDataInWritingSystemToBeDeletedFired, Is.True); } }
public void DeleteCurrent_NoDataInProjectAndNotAllowedToDelete_ThrowsUserException() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_No; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.Throws <ErrorReport.ProblemNotificationSentToUserException>( () => _model.DeleteCurrent() ); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToDeleteAndNoOneListeningToCanDelete_Deletes() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Delete; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.False); } }
public void DeleteCurrent_DataInProjectAndUserCancels_NothingHappens() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Nothing; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.True); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToDelete_OkToDeleteFired() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Delete; _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; //just need a listener to verifiy that it did fire _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.DeleteCurrent(); Assert.That(e.AskIfOkToDeleteWritingSystemFired, Is.True); } }
public void DeleteCurrent_NoDataInProjectAndAllowedToDelete_WritingSystemIsDeleted() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.Save(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.False); } }
public void Event_Delete_TriggersOnAddDelete() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AddNew(); _model.CurrentISO = "pt"; bool eventTriggered = false; _model.ItemAddedOrDeleted += delegate { eventTriggered = true; }; _model.DeleteCurrent(); Assert.IsTrue(eventTriggered); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToConflateAndCanConflate_Deleted() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Conflate; _model.AskIfOkToConflateWritingSystems += e.OnAskIfOkToConflateWritingSystems_Yes; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.False); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToConflateButCannotConflate_ThrowsUserException() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Conflate; _model.AskIfOkToConflateWritingSystems += e.OnAskIfOkToConflateWritingSystems_No; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.Throws <ErrorReport.ProblemNotificationSentToUserException>( () => _model.DeleteCurrent() ); } }
public void DeleteCurrent_NoDataInProjectAndAllowedToDelete_WritingSystemIsDeleted() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.Save(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.False); } }
public void DeleteCurrent_DataInProjectAndUserCancels_NothingHappens() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Nothing; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.True); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToConflateAndNoOneListeningToCanConflate_Deletes() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Conflate; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.LanguageTag == "pt"), Is.False); } }
public void DeleteCurrent_DataInProject_AskUserWhatToDoWithDataInWritingSystemToBeDeletedFires() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Nothing; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.DeleteCurrent(); Assert.That(e.AskUserWhatToDoWithDataInWritingSystemToBeDeletedFired, Is.True); } }
public void DeleteCurrent_DataInProjectAndNoOneListeningToUserChoiceEvent_OkToDeleteIsFired() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; //just need a listener to verifiy that it did fire _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.DeleteCurrent(); Assert.That(e.AskIfOkToDeleteWritingSystemFired, Is.True); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToDelete_OkToDeleteFired() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Delete; _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; //just need a listener to verifiy that it did fire _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); _model.DeleteCurrent(); Assert.That(e.AskIfOkToDeleteWritingSystemFired, Is.True); } }
public void DeleteCurrent_NoLongerInList() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AddNew(); _model.CurrentISO = "pt"; _model.AddNew(); _model.CurrentISO = "de"; _model.AddNew(); _model.CurrentISO = "th"; var writingSystems = new List<string>(); for (_model.CurrentIndex = _model.WritingSystemCount - 1; _model.HasCurrentSelection; _model.CurrentIndex--) { writingSystems.Insert(0, _model.CurrentISO); } string deletedWritingSystem = writingSystems[1]; _model.CurrentIndex = 1; _model.DeleteCurrent(); for (_model.CurrentIndex = _model.WritingSystemCount - 1; _model.HasCurrentSelection; _model.CurrentIndex--) { Assert.AreNotEqual(deletedWritingSystem, _model.CurrentISO); } } }
public void Event_Delete_TriggersOnAddDelete() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AddNew(); _model.CurrentISO = "pt"; bool eventTriggered = false; _model.ItemAddedOrDeleted += delegate { eventTriggered = true; }; _model.DeleteCurrent(); Assert.IsTrue(eventTriggered); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToDeleteAndCanDelete_Deletes() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Delete; _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_Yes; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.True); _model.DeleteCurrent(); Assert.That(_model.WritingSystemDefinitions.Any(ws => ws.Id == "pt"), Is.False); } }
public void DeleteCurrent_DataInProjectAndUserChoosesToDeleteButNotAllowedToDelete_ThrowsUserException() { using (var e = new DeleteCurrentTestEnvironment()) { _model.AskUserWhatToDoWithDataInWritingSystemToBeDeleted += e.OnAskUserWhatToDoWithDataInWritingSystemToBeDeleted_Delete; _model.AskIfOkToDeleteWritingSystems += e.OnAskIfOkToDeleteWritingSystem_No; _model.AddPredefinedDefinition(new WritingSystemDefinition("pt")); Assert.Throws<ErrorReport.ProblemNotificationSentToUserException>( () => _model.DeleteCurrent() ); } }