public CatalogueViewModel( IArticlePictureLocator articlePictureLocator, ICommandService <OpenWebPage> webBrowserService, ISearchSettingsProvider searchSettingsProvider, IArticleSearchEngine searchEngine) { if (articlePictureLocator == null) { throw new ArgumentNullException(nameof(articlePictureLocator)); } if (webBrowserService == null) { throw new ArgumentNullException(nameof(webBrowserService)); } if (searchSettingsProvider == null) { throw new ArgumentNullException(nameof(searchSettingsProvider)); } if (searchEngine == null) { throw new ArgumentNullException(nameof(searchEngine)); } this.articlePictureLocator = articlePictureLocator; this.webBrowserService = webBrowserService; this.searchSettingsProvider = searchSettingsProvider; this.searchEngine = searchEngine; SearchCommand = new RelayCommand(() => Search()); ShowSelectedArticleFluCommand = new RelayCommand(() => ShowSelectedArticleFlu()); InitPropertiesBoundToUI(); }
public void Constructor_NullDecoratedSearchEnginePassed_Throws() { IArticleSearchEngine nullSearchEngine = null; var stubDialogService = Substitute.For <IMessageBoxDialogService>(); Assert.Catch <ArgumentNullException>(() => new SearchEngineNoResultFoundNotifier( nullSearchEngine, stubDialogService)); }
public SearchEngineNoResultFoundNotifier( IArticleSearchEngine decoratedSearchEngine, IMessageBoxDialogService dialogService) { if (decoratedSearchEngine == null) { throw new ArgumentNullException(nameof(decoratedSearchEngine)); } if (dialogService == null) { throw new ArgumentNullException(nameof(dialogService)); } this.decoratedSearchEngine = decoratedSearchEngine; this.dialogService = dialogService; }
public GestionPhotosViewModel( IArticlePictureLocator locator, IArticlePictureUpdater updater, IFileDialogService fileDialogService, IArticleSearchEngine searchEngine) { if (locator == null) { throw new ArgumentNullException(nameof(locator)); } if (updater == null) { throw new ArgumentNullException(nameof(updater)); } if (fileDialogService == null) { throw new ArgumentNullException(nameof(fileDialogService)); } if (searchEngine == null) { throw new ArgumentNullException(nameof(searchEngine)); } this.locator = locator; this.updater = updater; this.fileDialogService = fileDialogService; this.searchEngine = searchEngine; SearchCommand = new RelayCommand(() => Search()); SelectNewPictureFileCommand = new RelayCommand(() => SelectNewPictureFile()); UpdateSelectedArticlePictureCommand = new RelayCommand(() => UpdateSelectedArticlePicture()); OpenPictureFolderCommand = new RelayCommand(() => OpenPictureFolder()); InitSearchSettings(); SearchResults = new ObservableCollection <Article>(); OnlySearchArticlesWithoutPicture = true; }