public virtual void Initialize() { Step1Settings settings = _settingsService.LoadSettings <Step1Settings>("Step1Settings"); if (settings != null && settings.SaveSettings) { _pathsFrom = new List <string>(settings.PathsFrom); _selectedFilesLimit = FilesLimitTypes.SingleOrDefault(x => x.ID == settings.SelectedFilesLimitID); if (_selectedFilesLimit == null) { _selectedFilesLimit = FilesLimitTypes.First(); } _findOnlyUniqueFiles = settings.FindOnlyUniqueFiles; _saveSettings = settings.SaveSettings; FilesSize = GetFilesSizeLimitSettings(settings); FilesNumber = GetFilesNumberLimitSettings(settings); FilesAndFolders = GetFilesAndFoldersLimitSettings(settings); } else { _pathsFrom = new List <string>(); _selectedFilesLimit = FilesLimitTypes.First(); _findOnlyUniqueFiles = true; _saveSettings = false; FilesSize = GetFilesSizeLimitSettings(); FilesNumber = GetFilesNumberLimitSettings(); FilesAndFolders = GetFilesAndFoldersLimitSettings(); } }
public virtual FilesAndFoldersLimitSettings GetFilesAndFoldersLimitSettings(Step1Settings settings = null) { if (settings != null) { return(new FilesAndFoldersLimitSettings(settings.FoldersNumber, settings.FilesInFolderNumber, settings.OrganizeFiles)); } else { return(new FilesAndFoldersLimitSettings()); } }
public virtual FilesNumberLimitSettings GetFilesNumberLimitSettings(Step1Settings settings = null) { if (settings != null) { return(new FilesNumberLimitSettings(settings.FilesNumber)); } else { return(new FilesNumberLimitSettings()); } }
public virtual FilesSizeLimitSettings GetFilesSizeLimitSettings(Step1Settings settings = null) { if (settings != null) { return(new FilesSizeLimitSettings(settings.SelectedSizeID, settings.SizeLimit)); } else { return(new FilesSizeLimitSettings()); } }
public void Initialize_LoadSavedSettings_ViewModelIsInitializedWithLoadedSettings() { Step1Settings savedSettings = new Step1Settings { PathsFrom = new string [] { "TestPathFrom" }, SelectedFilesLimitID = 1, SaveSettings = true, SelectedSizeID = 5, FindOnlyUniqueFiles = true, SizeLimit = 0.0001, FilesNumber = 1111, FoldersNumber = 22222, FilesInFolderNumber = 3333, OrganizeFiles = true }; Mock <FilesSizeLimitSettings> filesSizeLimitSettingsMock = new Mock <FilesSizeLimitSettings>(It.IsAny <int>(), It.IsAny <double>()); Mock <FilesNumberLimitSettings> filesNumberLimitSettingsMock = new Mock <FilesNumberLimitSettings>(It.IsAny <int>()); Mock <FilesAndFoldersLimitSettings> filesAndFoldersLimitSettingsMock = new Mock <FilesAndFoldersLimitSettings>(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <bool>()); _settingsServiceMock.Setup(x => x.LoadSettings <Step1Settings>("Step1Settings")).Returns(savedSettings); _step1ViewModelMock.SetupGet(x => x.FilesLimitTypes).Returns(new ReadOnlyCollection <Limit>(new List <Limit>() { new Limit { ID = 2 }, new Limit { ID = 1 }, new Limit { ID = 100 } })); _step1ViewModelMock.Setup(x => x.GetFilesSizeLimitSettings(savedSettings)).Returns(filesSizeLimitSettingsMock.Object); _step1ViewModelMock.Setup(x => x.GetFilesNumberLimitSettings(savedSettings)).Returns(filesNumberLimitSettingsMock.Object); _step1ViewModelMock.Setup(x => x.GetFilesAndFoldersLimitSettings(savedSettings)).Returns(filesAndFoldersLimitSettingsMock.Object); Assert.AreEqual(savedSettings.PathsFrom, _step1ViewModelMock.Object.PathsFrom); Assert.AreEqual(_step1ViewModelMock.Object.FilesLimitTypes[1], _step1ViewModelMock.Object.SelectedFilesLimit); Assert.AreEqual(savedSettings.FindOnlyUniqueFiles, _step1ViewModelMock.Object.FindOnlyUniqueFiles); Assert.AreEqual(savedSettings.SaveSettings, _step1ViewModelMock.Object.SaveSettings); Assert.AreEqual(filesSizeLimitSettingsMock.Object, _step1ViewModelMock.Object.FilesSize); Assert.AreEqual(filesNumberLimitSettingsMock.Object, _step1ViewModelMock.Object.FilesNumber); Assert.AreEqual(filesAndFoldersLimitSettingsMock.Object, _step1ViewModelMock.Object.FilesAndFolders); }
public virtual void UpdateSettings() { if (SaveSettings) { Step1Settings settings = new Step1Settings { FindOnlyUniqueFiles = FindOnlyUniqueFiles, PathsFrom = PathsFrom.ToArray(), SelectedFilesLimitID = SelectedFilesLimit != null ? SelectedFilesLimit.ID : (int?)null, SelectedSizeID = FilesSize.SelectedSize != null ? FilesSize.SelectedSize.ID : (int?)null, SizeLimit = FilesSize.SizeLimit, FilesNumber = FilesNumber.Number, FilesInFolderNumber = FilesAndFolders.FilesNumber, FoldersNumber = FilesAndFolders.FoldersNumber, SaveSettings = SaveSettings }; _settingsService.SaveSettings("Step1Settings", settings); } else { _settingsService.RemoveSettings("Step1Settings"); } }