public void EditNoteTest_When_IdNotCorrectAndNotExist_Then_NotEdit() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var id = "44"; var repository = new NoteRepository(noteProviderMock.Object); repository.AddNote("title", "text"); var linesToRead = new List <string>() { id, "n" }; var fakeConsoleProvider = new FakeConsoleProvider(linesToRead); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.Edit)); var expected = $"Please enter id of note to edit:{Environment.NewLine}" + $"The note with id [{id}] is not exist in the list of notes.{Environment.NewLine}" + $"Do you want to edit another note? (y/n){Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }
public void AddNoteTest_When_NotCorrectTitleOrText_Then_NotAdd() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var title = string.Empty; var text = string.Empty; var repository = new NoteRepository(noteProviderMock.Object); var linesToRead = new List <string>() { title, text, "n" }; var fakeConsoleProvider = new FakeConsoleProvider(linesToRead); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.Add)); var expected = $"Enter note title{Environment.NewLine}" + $"> Enter note text{Environment.NewLine}" + $"> Note was not added. Enter title or text.{Environment.NewLine}" + $"Do you want to add another note? (y/n){Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }
public void DeleteNoteTest_When_CorrectIdAndNoteExists_Then_Delete() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var id = "1"; var repository = new NoteRepository(noteProviderMock.Object); repository.AddNote("title", "text"); var linesToRead = new List <string>() { id, "n" }; var fakeConsoleProvider = new FakeConsoleProvider(linesToRead); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.Delete)); var expected = $"Please enter id of note to delete:{Environment.NewLine}" + $"The note with id [{id}] was successfully deleted.{Environment.NewLine}" + $"Do you want to delete another note? (y/n){Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }
public void ShowNoteTest_When_HasElements_Then_ShowList() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var title = "title"; var text = "text"; var id = 1; var repository = new NoteRepository(noteProviderMock.Object); repository.AddNote(title, text); var fakeConsoleProvider = new FakeConsoleProvider(null); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.List)); var expected = $"Here are list of all notes:{Environment.NewLine}" + $"id: {id} || title: '{title}' || text: '{text}'{Environment.NewLine}" + $"Press any key to return to the main window...{Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }
public void DeleteNoteTest_When_IdNotCorrect_Then_NotDeleted() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var id = "text"; var repository = new NoteRepository(noteProviderMock.Object); var linesToRead = new List <string>() { id, "n" }; var fakeConsoleProvider = new FakeConsoleProvider(linesToRead); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.Delete)); var expected = $"Please enter id of note to delete:{Environment.NewLine}" + $"Id [{id}] is not a number.{Environment.NewLine}" + $"Do you want to delete another note? (y/n){Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }
public void ShowNoteTest_When_NoElements_Then_ShowInfoMessage() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var repository = new NoteRepository(noteProviderMock.Object); var fakeConsoleProvider = new FakeConsoleProvider(null); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.List)); var expected = $"There are zero notes.{Environment.NewLine}" + $"Press any key to return to the main window...{Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }
public void EditNoteTest_When_NotCorrectareYouSureAboutThat_Then_NotEdit() { var noteProviderMock = new Mock <INoteProvider>(); noteProviderMock.Setup(x => x.CreateNoteList()).Returns(new List <Note>()); var id = "1"; var title = "title"; var text = "text"; var newTitle = string.Empty; var newText = string.Empty; var areYouSureAboutThatNotCorrect = "error"; var areYouSureAboutThat = "y"; var repository = new NoteRepository(noteProviderMock.Object); repository.AddNote(title, text); var linesToRead = new List <string>() { id, newTitle, areYouSureAboutThatNotCorrect, areYouSureAboutThat, newText, "n" }; var fakeConsoleProvider = new FakeConsoleProvider(linesToRead); var service = new NoteConsoleService( repository, fakeConsoleProvider, new Mock <ICommandHelper>().Object); service.Handle(nameof(Command.Edit)); var expected = $"Please enter id of note to edit:{Environment.NewLine}" + $"Current title of this note: {title}. Pick a new title:{Environment.NewLine}" + $"> Are you sure (y/n)?{Environment.NewLine}" + $"Wrong input! Pass only \"y\" or \"n\".{Environment.NewLine}" + $"Current text of this note: {text}. Pick a new text:{Environment.NewLine}" + $"> Text was NOT successfully changed. Enter title or text.{Environment.NewLine}" + $"Do you want to edit another note? (y/n){Environment.NewLine}"; Assert.Equal(expected, fakeConsoleProvider.Output); }