public void DynamicVisibleValidationMethod_DependingOnHydraulicDatabaseLinkStatus_ReturnsExpectedVisibility(bool isHydraulicBoundaryDatabaseLinked) { // Setup var mocks = new MockRepository(); var importHandler = mocks.Stub <IHydraulicLocationConfigurationDatabaseImportHandler>(); mocks.ReplayAll(); HydraulicBoundaryDatabase hydraulicBoundaryDatabase = isHydraulicBoundaryDatabaseLinked ? CreateLinkedHydraulicBoundaryDatabase() : new HydraulicBoundaryDatabase(); // Call var properties = new HydraulicBoundaryDatabaseProperties(hydraulicBoundaryDatabase, importHandler); // Assert Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.HrdFilePath))); Assert.IsFalse(properties.DynamicVisibleValidationMethod(nameof(properties.UsePreprocessor))); Assert.IsFalse(properties.DynamicVisibleValidationMethod(nameof(properties.PreprocessorDirectory))); Assert.IsFalse(properties.DynamicVisibleValidationMethod(nameof(properties.PreprocessorDirectoryReadOnly))); Assert.AreEqual(isHydraulicBoundaryDatabaseLinked, properties.DynamicVisibleValidationMethod(nameof(properties.HlcdFilePath))); Assert.AreEqual(!isHydraulicBoundaryDatabaseLinked, properties.DynamicVisibleValidationMethod(nameof(properties.HlcdFilePathReadOnly))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.ScenarioName))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Year))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Scope))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.SeaLevel))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.RiverDischarge))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.LakeLevel))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.WindDirection))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.WindSpeed))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Comment))); mocks.VerifyAll(); }
public void DynamicVisibleValidationMethod_DependingOnCanUsePreprocessorAndUsePreprocessor_ReturnExpectedVisibility( [Values(true, false)] bool canUsePreprocessor, [Values(true, false)] bool usePreprocessor) { // Setup var mocks = new MockRepository(); var importHandler = mocks.Stub <IHydraulicLocationConfigurationDatabaseImportHandler>(); mocks.ReplayAll(); var hydraulicBoundaryDatabase = new HydraulicBoundaryDatabase(); if (canUsePreprocessor) { hydraulicBoundaryDatabase.HydraulicLocationConfigurationSettings.CanUsePreprocessor = true; hydraulicBoundaryDatabase.HydraulicLocationConfigurationSettings.UsePreprocessor = usePreprocessor; hydraulicBoundaryDatabase.HydraulicLocationConfigurationSettings.PreprocessorDirectory = "Preprocessor"; } // Call var properties = new HydraulicBoundaryDatabaseProperties(hydraulicBoundaryDatabase, importHandler); // Assert Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.HrdFilePath))); Assert.AreEqual(canUsePreprocessor, properties.DynamicVisibleValidationMethod(nameof(properties.UsePreprocessor))); Assert.AreEqual(canUsePreprocessor && usePreprocessor, properties.DynamicVisibleValidationMethod(nameof(properties.PreprocessorDirectory))); Assert.AreEqual(canUsePreprocessor && !usePreprocessor, properties.DynamicVisibleValidationMethod(nameof(properties.PreprocessorDirectoryReadOnly))); Assert.IsFalse(properties.DynamicVisibleValidationMethod(nameof(properties.HlcdFilePath))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.HlcdFilePathReadOnly))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.ScenarioName))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Year))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Scope))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.SeaLevel))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.RiverDischarge))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.LakeLevel))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.WindDirection))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.WindSpeed))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Comment))); mocks.VerifyAll(); }