public void TestSearch1() { var viewModel = new QuickNavigationViewModel(_dataSources.Object); _sources.Add(CreateSingleDataSource("Tailviewer.log")); viewModel.Suggestions.Should().BeNullOrEmpty(); viewModel.SearchTerm = "TAIL"; viewModel.Suggestions.Should().HaveCount(1); }
public void TestSearch5() { var viewModel = new QuickNavigationViewModel(_dataSources.Object); _sources.Add(CreateMergedDataSource("Foobar")); _sources.Add(CreateSingleDataSource("Foo")); viewModel.SearchTerm = "Foo"; viewModel.Suggestions.Should().HaveCount(2); }
public void TestSearch4() { var viewModel = new QuickNavigationViewModel(_dataSources.Object); _sources.Add(CreateSingleDataSource("A")); _sources.Add(CreateSingleDataSource("AA")); viewModel.SearchTerm = "A"; viewModel.Suggestions.Should().HaveCount(2); viewModel.SelectedSuggestion.Should().Be(viewModel.Suggestions[0]); }
public void TestSearch3() { var viewModel = new QuickNavigationViewModel(_dataSources.Object); _sources.Add(CreateSingleDataSource("A")); _sources.Add(CreateSingleDataSource("AA")); viewModel.SearchTerm = "B"; viewModel.Suggestions.Should().BeNullOrEmpty(); viewModel.SelectedSuggestion.Should().BeNull(); }
public void TestSearch2() { var viewModel = new QuickNavigationViewModel(_dataSources.Object); _sources.Add(CreateSingleDataSource("Tailviewer.log")); viewModel.SearchTerm = "AIL"; var suggestion = viewModel.Suggestions[0]; suggestion.Should().NotBeNull(); suggestion.Prefix.Should().Be("T"); suggestion.Midfix.Should().Be("ail"); suggestion.Postfix.Should().Be("viewer.log"); }
public LogViewMainPanelViewModel(IServiceContainer services, IActionCenter actionCenter, IDataSources dataSources, IQuickFilters quickFilters, IHighlighters highlighters, IApplicationSettings applicationSettings) : base(applicationSettings) { if (actionCenter == null) { throw new ArgumentNullException(nameof(actionCenter)); } _applicationSettings = applicationSettings; _actionCenter = actionCenter; _dataSources = new DataSourcesViewModel(applicationSettings, dataSources, _actionCenter); _dataSources.PropertyChanged += DataSourcesOnPropertyChanged; _quickFilters = new QuickFiltersSidePanelViewModel(applicationSettings, quickFilters); _quickFilters.OnFiltersChanged += OnFiltersChanged; _highlighters = new HighlightersSidePanelViewModel(highlighters); _goToLine = new GoToLineViewModel(); _goToLine.LineNumberChosen += GoToLineOnLineNumberChosen; _quickNavigation = new QuickNavigationViewModel(dataSources); _quickNavigation.DataSourceChosen += QuickNavigationOnDataSourceChosen; _bookmarks = new BookmarksViewModel(dataSources, OnNavigateToBookmark); _outline = new OutlineSidePanelViewModel(services); _issues = new IssuesSidePanelViewModel(services); _sidePanels = new ISidePanelViewModel[] { _dataSources, _quickFilters, //_highlighters, _bookmarks, _outline, _issues }; SelectedSidePanel = _sidePanels.FirstOrDefault(x => x.Id == _applicationSettings.MainWindow?.SelectedSidePanel); PropertyChanged += OnPropertyChanged; ChangeDataSource(CurrentDataSource); }
public void TestChooseSuggestion() { var viewModel = new QuickNavigationViewModel(_dataSources.Object); _sources.Add(CreateSingleDataSource("A")); _sources.Add(CreateSingleDataSource("AA")); viewModel.SearchTerm = "AA"; viewModel.Suggestions.Should().HaveCount(1); var suggestion = viewModel.Suggestions[0]; viewModel.ChooseDataSourceCommand.CanExecute(suggestion).Should().BeTrue(); viewModel.MonitorEvents(); viewModel.ChooseDataSourceCommand.Execute(suggestion); viewModel.ShouldRaise(nameof(QuickNavigationViewModel.DataSourceChosen)); }