public void Given_a_sentence_when_analyze_button_is_pressed_a_list_of_word_frequencies_will_be_displayed() { MainWindowViewModel viewModel = new MainWindowViewModel(); viewModel.Sentence = "This is a statement, and so is this."; viewModel.AnalyzeSentenceCommand.Execute(null); var results = viewModel.AnalysisResults; Assert.AreEqual(6, results.Count()); Assert.AreEqual("this", results[0].Word); Assert.AreEqual(2, results[0].Frequency); Assert.AreEqual("is", results[1].Word); Assert.AreEqual(2, results[1].Frequency); Assert.AreEqual("a", results[2].Word); Assert.AreEqual(1, results[2].Frequency); Assert.AreEqual("statement", results[3].Word); Assert.AreEqual(1, results[3].Frequency); Assert.AreEqual("and", results[4].Word); Assert.AreEqual(1, results[4].Frequency); Assert.AreEqual("so", results[5].Word); Assert.AreEqual(1, results[5].Frequency); }
protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); MainWindowViewModel mainWindowViewModel = new MainWindowViewModel(); MainWindow mainWindow = new MainWindow(mainWindowViewModel); mainWindow.Show(); }
//Can Construction injection //Or change to Property and use property injection public MainWindow(MainWindowViewModel mainWindowViewModel) { InitializeComponent(); _mainWindowViewModel = mainWindowViewModel; DataContext = _mainWindowViewModel; }