/// <summary> /// Initializes a new instance of the MainViewModel class. /// </summary> public MainViewModel() { if (IsInDesignMode) { // Code runs in Blend --> create design time data. } else { noLabel = new LabelViewModel(new LabelMock() { Text = "No label" }, this); openNote = new OpenNoteCommand(this); newNote = new NewNoteCommand(this); closeNote = new CloseNoteCommand(this); deleteNote = new DeleteNoteCommand(this); saveNote = new SaveNoteCommand(this); delayedSaveNote = new DelayedSaveNoteCommand(this); simpleSearch = new SimpleSearchCommand(this); search = new ComplexSearchCommand(this); toggleSearch = new ToggleAdvancedSearchCommand(this); hideSearch = new HideSearchViewCommand(this); hideComplexSearch = new HideComplexSearchCommand(this); OpenNotes.CollectionChanged += openNotes_CollectionChanged; SearchResults.CollectionChanged += searchResults_CollectionChanged; } }
public void SaveNoteCommandTest() { var notebook = Substitute.For <INotebook>(); var userFileInput = Substitute.For <IUserFileInput>(); userFileInput.TryGetFileName(Arg.Any <string>(), out Arg.Any <string>()).Returns(x => { x[1] = "1"; return(true); }); var fileSaver = Substitute.For <IFileSaver>(); var saveNoteCommand = new SaveNoteCommand(notebook, userFileInput, fileSaver); saveNoteCommand.Execute(); fileSaver.Received().TrySaveFile("1", notebook); //var notebook = new Notebook.Notebook.Notebook(); //var userInput = Substitute.For<IUserInput>(); //userInput.TryGetString(Arg.Any<string>(), out Arg.Any<string>()).Returns(x => //{ // x[1] = "qwerty"; // return true; //}); //userInput.TryGetInt(Arg.Any<string>(), out Arg.Any<int?>()).Returns(x => //{ // x[1] = 123; // return true; //}); //Assert.AreEqual(true, userInput.TryGetString("name", out var str)); //Assert.AreEqual(true, userInput.TryGetInt("group", out var num)); //Assert.NotNull(num); //notebook.Add(new PhoneNote(str, str)); //notebook.Add(new PhoneNote(str, str)); //notebook.Add(new StudentNote(str, (int) num)); //var userFileInput = Substitute.For<IUserFileInput>(); //userFileInput.TryGetFileName(Arg.Any<string>(), out Arg.Any<string>()).Returns(x => //{ // x[1] = "c:\\Users\\Артем\\source\\repos\\Container\\NotebookProjectTests\\Saves\\111.notebook"; // return true; //}); //var userOutput = new UserOutput(); //var counter = 0; //var fileSaver = Substitute.For<IFileSaver>(); //fileSaver.TrySaveFile(Arg.Any<string>(), Arg.Any<INotebook>()).Returns(true); //fileSaver.When(x => x.TrySaveFile(Arg.Any<string>(), Arg.Any<INotebook>())).Do(x => counter++); //var saveNoteCommand = Substitute.For<ICommand>(); //saveNoteCommand.When(x => x.Execute()).Do(x => fileSaver.TrySaveFile("123", notebook)); //saveNoteCommand.Execute(); //fileSaver.Received().TrySaveFile("123", notebook); //Assert.AreEqual(1, counter); }