Index: Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/Assembly/AssessmentSectionAssemblyFactoryTest.cs =================================================================== diff -u -rcb444ff67c7b1e2e1da75e00557a191995835dd8 -rd20e2db88b0c2f339c61d4a1b151babcb34e132a --- Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/Assembly/AssessmentSectionAssemblyFactoryTest.cs (.../AssessmentSectionAssemblyFactoryTest.cs) (revision cb444ff67c7b1e2e1da75e00557a191995835dd8) +++ Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/Assembly/AssessmentSectionAssemblyFactoryTest.cs (.../AssessmentSectionAssemblyFactoryTest.cs) (revision d20e2db88b0c2f339c61d4a1b151babcb34e132a) @@ -36,12 +36,10 @@ using Ringtoets.Common.Data.Exceptions; using Ringtoets.Common.Data.FailureMechanism; using Ringtoets.Common.Data.TestUtil; -using Ringtoets.Common.Primitives; using Ringtoets.DuneErosion.Data; using Ringtoets.GrassCoverErosionOutwards.Data; using Ringtoets.Integration.Data.Assembly; using Ringtoets.Integration.Data.StandAlone; -using Ringtoets.Integration.Data.StandAlone.SectionResults; using Ringtoets.Integration.Data.TestUtil; using Ringtoets.Integration.TestUtil; using Ringtoets.Piping.Data; @@ -169,7 +167,7 @@ [Test] [TestCaseSource(typeof(AssessmentSectionAssemblyTestHelper), nameof(AssessmentSectionAssemblyTestHelper.GetConfiguredAssessmentSectionWithFailureMechanismsWithProbability))] - public void AssembleFailureMechanismsWithProbability_AssessmentSectionWithFailureMechanismWithManualAssemblyAndUseManualTrue_SetsInputOnCalculator(AssessmentSection assessmentSection) + public void AssembleFailureMechanismsWithProbability_FailureMechanismWithManualSectionAssemblyAndUseManualTrue_SetsInputOnCalculator(AssessmentSection assessmentSection) { // Setup using (new AssemblyToolCalculatorFactoryConfig()) @@ -187,7 +185,7 @@ [Test] [TestCaseSource(typeof(AssessmentSectionAssemblyTestHelper), nameof(AssessmentSectionAssemblyTestHelper.GetConfiguredAssessmentSectionWithFailureMechanismsWithProbability))] - public void AssembleFailureMechanismsWithProbability_AssessmentSectionWithFailureMechanismWithManualAssemblyAndUseManualFalse_SetsInputOnCalculator(AssessmentSection assessmentSection) + public void AssembleFailureMechanismsWithProbability_FailureMechanismWithManualSectionAssemblyAndUseManualFalse_SetsInputOnCalculator(AssessmentSection assessmentSection) { // Setup using (new AssemblyToolCalculatorFactoryConfig()) @@ -316,7 +314,7 @@ [Test] [TestCaseSource(typeof(AssessmentSectionAssemblyTestHelper), nameof(AssessmentSectionAssemblyTestHelper.GetConfiguredAssessmentSectionWithFailureMechanismsWithoutProbability))] - public void AssembleFailureMechanismsWithoutProbability_AssessmentSectionWithFailureMechanismWFromGroup3ithManualAssemblyAndUseManualTrue_SetsInputOnCalculator(AssessmentSection assessmentSection) + public void AssembleFailureMechanismsWithoutProbability_FailureMechanismWithManualSectionAssemblyAndUseManualTrue_SetsInputOnCalculator(AssessmentSection assessmentSection) { // Setup using (new AssemblyToolCalculatorFactoryConfig()) @@ -334,7 +332,7 @@ [Test] [TestCaseSource(typeof(AssessmentSectionAssemblyTestHelper), nameof(AssessmentSectionAssemblyTestHelper.GetConfiguredAssessmentSectionWithFailureMechanismsWithoutProbability))] - public void AssembleFailureMechanismsWithoutProbability_AssessmentSectionWithFailureMechanismFromGroup3WithManualAssemblyAndUseManualFalse_SetsInputOnCalculator(AssessmentSection assessmentSection) + public void AssembleFailureMechanismsWithoutProbability_FailureMechanismWithManualSectionAssemblyAndUseManualFalse_SetsInputOnCalculator(AssessmentSection assessmentSection) { // Setup using (new AssemblyToolCalculatorFactoryConfig()) @@ -388,459 +386,86 @@ .ManualAssemblyCategoryGroup, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - #region GrassCoverSlipOffInwards - - [Test] - public void GivenAssessmentSectionWithGrassCoverSlipOffInwardsConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - GrassCoverSlipOffInwardsFailureMechanism failureMechanism = assessmentSection.GrassCoverSlipOffInwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - GrassCoverSlipOffInwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var grassCoverSlipOffInwards = failureMechanism as GrassCoverSlipOffInwardsFailureMechanism; + if (grassCoverSlipOffInwards != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(grassCoverSlipOffInwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithGrassCoverSlipOffInwardsConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - GrassCoverSlipOffInwardsFailureMechanism failureMechanism = assessmentSection.GrassCoverSlipOffInwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - GrassCoverSlipOffInwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var grassCoverSlipOffOutwards = failureMechanism as GrassCoverSlipOffOutwardsFailureMechanism; + if (grassCoverSlipOffOutwards != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region GrassCoverSlipOffOutwards - - [Test] - public void GivenAssessmentSectionWithGrassCoverSlipOffOutwardsConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - GrassCoverSlipOffOutwardsFailureMechanism failureMechanism = assessmentSection.GrassCoverSlipOffOutwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - GrassCoverSlipOffOutwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(grassCoverSlipOffOutwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithGrassCoverSlipOffOutwardsConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - GrassCoverSlipOffOutwardsFailureMechanism failureMechanism = assessmentSection.GrassCoverSlipOffOutwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - GrassCoverSlipOffOutwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var pipingStructure = failureMechanism as PipingStructureFailureMechanism; + if (pipingStructure != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region MacroStabilityOutwards - - [Test] - public void GivenAssessmentSectionWithMacroStabilityOutwardsConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - MacroStabilityOutwardsFailureMechanism failureMechanism = assessmentSection.MacroStabilityOutwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - MacroStabilityOutwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(pipingStructure.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithMacroStabilityOutwardsConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - MacroStabilityOutwardsFailureMechanism failureMechanism = assessmentSection.MacroStabilityOutwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - MacroStabilityOutwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var strengthStabilityLengthwiseConstruction = failureMechanism as StrengthStabilityLengthwiseConstructionFailureMechanism; + if (strengthStabilityLengthwiseConstruction != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.VIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region Microstability - - [Test] - public void GivenAssessmentSectionWithMicrostabilityConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - MicrostabilityFailureMechanism failureMechanism = assessmentSection.Microstability; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - MicrostabilityFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(strengthStabilityLengthwiseConstruction.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithMicrostabilityConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - MicrostabilityFailureMechanism failureMechanism = assessmentSection.Microstability; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - MicrostabilityFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var technicalInnovation = failureMechanism as TechnicalInnovationFailureMechanism; + if (technicalInnovation != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region PipingStructure - - [Test] - public void GivenAssessmentSectionWithPipingStructureConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - PipingStructureFailureMechanism failureMechanism = assessmentSection.PipingStructure; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - PipingStructureFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(technicalInnovation.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithPipingStructureConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - PipingStructureFailureMechanism failureMechanism = assessmentSection.PipingStructure; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - PipingStructureFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var microStability = failureMechanism as MicrostabilityFailureMechanism; + if (microStability != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region StrengthStabilityLengthwiseConstruction - - [Test] - public void GivenAssessmentSectionWithStrengthStabilityLengthwiseConstructionConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - StrengthStabilityLengthwiseConstructionFailureMechanism failureMechanism = assessmentSection.StrengthStabilityLengthwiseConstruction; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - StrengthStabilityLengthwiseConstructionFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(microStability.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithStrengthStabilityLengthwiseConstructionConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - StrengthStabilityLengthwiseConstructionFailureMechanism failureMechanism = assessmentSection.StrengthStabilityLengthwiseConstruction; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - StrengthStabilityLengthwiseConstructionFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var macroStabilityOutwards = failureMechanism as MacroStabilityOutwardsFailureMechanism; + if (macroStabilityOutwards != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region TechnicalInnovation - - [Test] - public void GivenAssessmentSectionWithTechnicalInnovationConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - TechnicalInnovationFailureMechanism failureMechanism = assessmentSection.TechnicalInnovation; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - TechnicalInnovationFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(macroStabilityOutwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithTechnicalInnovationConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - TechnicalInnovationFailureMechanism failureMechanism = assessmentSection.TechnicalInnovation; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - TechnicalInnovationFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) + var waterPressureAsphaltCover = failureMechanism as WaterPressureAsphaltCoverFailureMechanism; + if (waterPressureAsphaltCover != null) { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } - } - - #endregion - - #region WaterPressureAsphaltCover - - [Test] - public void GivenAssessmentSectionWithWaterPressureAsphaltCoverConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualTrue_ThenInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - WaterPressureAsphaltCoverFailureMechanism failureMechanism = assessmentSection.WaterPressureAsphaltCover; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - WaterPressureAsphaltCoverFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(waterPressureAsphaltCover.SectionResults + .Single() + .ManualAssemblyCategoryGroup), failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenAssessmentSectionWithWaterPressureAsphaltCoverConfigured_WhenAssemblingFailureMechanismsWithoutProbabilityAndUseManualFalse_ThenNoInputSetOnCalculator() - { - // Given - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - WaterPressureAsphaltCoverFailureMechanism failureMechanism = assessmentSection.WaterPressureAsphaltCover; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - - WaterPressureAsphaltCoverFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = ManualFailureMechanismSectionAssemblyCategoryGroup.Vv; - - using (new AssemblyToolCalculatorFactoryConfig()) - { - // When - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, false); - - // Then - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub failureMechanismAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.IIv, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); - } + throw new NotSupportedException(); } #endregion - private static AssessmentSection CreateIrrelevantAssessmentSection() - { - AssessmentSection assessmentSection = CreateAssessmentSection(); - assessmentSection.GetFailureMechanisms().ForEachElementDo(fm => fm.IsRelevant = false); - return assessmentSection; - } - #endregion - #endregion - #region Assemble Assessment Section [Test] @@ -1297,6 +922,13 @@ #region Helpers + private static AssessmentSection CreateIrrelevantAssessmentSection() + { + AssessmentSection assessmentSection = CreateAssessmentSection(); + assessmentSection.GetFailureMechanisms().ForEachElementDo(fm => fm.IsRelevant = false); + return assessmentSection; + } + private static CombinedFailureMechanismSectionAssembly CreateCombinedFailureMechanismSectionAssembly(AssessmentSection assessmentSection, int seed) { var random = new Random(seed); Index: Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/Assembly/CombinedAssemblyFailureMechanismSectionFactoryTest.cs =================================================================== diff -u -rcb444ff67c7b1e2e1da75e00557a191995835dd8 -rd20e2db88b0c2f339c61d4a1b151babcb34e132a --- Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/Assembly/CombinedAssemblyFailureMechanismSectionFactoryTest.cs (.../CombinedAssemblyFailureMechanismSectionFactoryTest.cs) (revision cb444ff67c7b1e2e1da75e00557a191995835dd8) +++ Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/Assembly/CombinedAssemblyFailureMechanismSectionFactoryTest.cs (.../CombinedAssemblyFailureMechanismSectionFactoryTest.cs) (revision d20e2db88b0c2f339c61d4a1b151babcb34e132a) @@ -254,7 +254,7 @@ }, true); // Then - AssertFailureMechanismsWithoutProbabilityManualAssemblyCalculatorInput(relevantFailureMechanism, input); + AssertInputForFailureMechanismsWithoutProbabilityWithManualAssembly(relevantFailureMechanism, input); } } @@ -279,8 +279,8 @@ } } - private static void AssertFailureMechanismsWithoutProbabilityManualAssemblyCalculatorInput(IFailureMechanism failureMechanism, - IEnumerable> actualInput) + private static void AssertInputForFailureMechanismsWithoutProbabilityWithManualAssembly(IFailureMechanism failureMechanism, + IEnumerable> actualInput) { var duneErosion = failureMechanism as DuneErosionFailureMechanism; if (duneErosion != null) @@ -317,6 +317,80 @@ .ManualAssemblyCategoryGroup, actualInput.Single().Single().CategoryGroup); } + + var grassCoverSlipOffInwards = failureMechanism as GrassCoverSlipOffInwardsFailureMechanism; + if (grassCoverSlipOffInwards != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(grassCoverSlipOffInwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var grassCoverSlipOffOutwards = failureMechanism as GrassCoverSlipOffOutwardsFailureMechanism; + if (grassCoverSlipOffOutwards != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(grassCoverSlipOffOutwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var pipingStructure = failureMechanism as PipingStructureFailureMechanism; + if (pipingStructure != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(pipingStructure.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var strengthStabilityLengthwiseConstruction = failureMechanism as StrengthStabilityLengthwiseConstructionFailureMechanism; + if (strengthStabilityLengthwiseConstruction != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(strengthStabilityLengthwiseConstruction.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var technicalInnovation = failureMechanism as TechnicalInnovationFailureMechanism; + if (technicalInnovation != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(technicalInnovation.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var microStability = failureMechanism as MicrostabilityFailureMechanism; + if (microStability != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(microStability.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var macroStabilityOutwards = failureMechanism as MacroStabilityOutwardsFailureMechanism; + if (macroStabilityOutwards != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(macroStabilityOutwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + var waterPressureAsphaltCover = failureMechanism as WaterPressureAsphaltCoverFailureMechanism; + if (waterPressureAsphaltCover != null) + { + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(waterPressureAsphaltCover.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + actualInput.Single().Single().CategoryGroup); + } + + throw new NotSupportedException(); } #endregion Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Views/AssemblyResultTotalViewTest.cs =================================================================== diff -u -rcb444ff67c7b1e2e1da75e00557a191995835dd8 -rd20e2db88b0c2f339c61d4a1b151babcb34e132a --- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Views/AssemblyResultTotalViewTest.cs (.../AssemblyResultTotalViewTest.cs) (revision cb444ff67c7b1e2e1da75e00557a191995835dd8) +++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Views/AssemblyResultTotalViewTest.cs (.../AssemblyResultTotalViewTest.cs) (revision d20e2db88b0c2f339c61d4a1b151babcb34e132a) @@ -640,7 +640,7 @@ [Test] [TestCaseSource(typeof(AssessmentSectionAssemblyTestHelper), nameof(AssessmentSectionAssemblyTestHelper.GetConfiguredAssessmentSectionWithFailureMechanismsWithProbability))] - public void GivenFormWithAssemblyResultTotalView_WhenFailureMechanismInGroup1Or2HasManualAssembly_ThenManualAssemblyUsed(AssessmentSection assessmentSection) + public void GivenFormWithAssemblyResultTotalView_WhenFailureMechanismWithProbabilityHasManualSectionAssembly_ThenManualAssemblyUsed(AssessmentSection assessmentSection) { // Given using (new AssemblyToolCalculatorFactoryConfig()) @@ -660,7 +660,7 @@ [Test] [TestCaseSource(typeof(AssessmentSectionAssemblyTestHelper), nameof(AssessmentSectionAssemblyTestHelper.GetConfiguredAssessmentSectionWithFailureMechanismsWithoutProbability))] - public void GivenFormWithAssemblyResultTotalView_WhenFailureMechanismInGroup3HasManualAssembly_ThenManualAssemblyUsed(AssessmentSection assessmentSection) + public void GivenFormWithAssemblyResultTotalView_WhenFailureMechanismWithoutProbabilityHasManualSectionAssembly_ThenManualAssemblyUsed(AssessmentSection assessmentSection) { // Given using (new AssemblyToolCalculatorFactoryConfig()) @@ -734,6 +734,8 @@ .ManualAssemblyProbability, calculator.ManualAssemblyProbabilityInput); } + + throw new NotSupportedException(); } private static void AssertFailureMechanismsWithoutProbabilityCalculatorInput(IFailureMechanism failureMechanism, @@ -774,238 +776,80 @@ .ManualAssemblyCategoryGroup, failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenGrassCoverSlipOffInwardsHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - GrassCoverSlipOffInwardsFailureMechanism failureMechanism = assessmentSection.GrassCoverSlipOffInwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - GrassCoverSlipOffInwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var grassCoverSlipOffInwards = failureMechanism as GrassCoverSlipOffInwardsFailureMechanism; + if (grassCoverSlipOffInwards != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(grassCoverSlipOffInwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenGrassCoverSlipOffOutwardsHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - GrassCoverSlipOffOutwardsFailureMechanism failureMechanism = assessmentSection.GrassCoverSlipOffOutwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - GrassCoverSlipOffOutwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var grassCoverSlipOffOutwards = failureMechanism as GrassCoverSlipOffOutwardsFailureMechanism; + if (grassCoverSlipOffOutwards != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(grassCoverSlipOffOutwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenMacroStabilityOutwardsHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - MacroStabilityOutwardsFailureMechanism failureMechanism = assessmentSection.MacroStabilityOutwards; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - MacroStabilityOutwardsFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var pipingStructure = failureMechanism as PipingStructureFailureMechanism; + if (pipingStructure != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(pipingStructure.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenMicrostabilityHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - MicrostabilityFailureMechanism failureMechanism = assessmentSection.Microstability; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - MicrostabilityFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var strengthStabilityLengthwiseConstruction = failureMechanism as StrengthStabilityLengthwiseConstructionFailureMechanism; + if (strengthStabilityLengthwiseConstruction != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(strengthStabilityLengthwiseConstruction.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenPipingStructureHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - PipingStructureFailureMechanism failureMechanism = assessmentSection.PipingStructure; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - PipingStructureFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var technicalInnovation = failureMechanism as TechnicalInnovationFailureMechanism; + if (technicalInnovation != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(technicalInnovation.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenStrengthStabilityLengthwiseConstructionHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - StrengthStabilityLengthwiseConstructionFailureMechanism failureMechanism = assessmentSection.StrengthStabilityLengthwiseConstruction; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - StrengthStabilityLengthwiseConstructionFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var microStability = failureMechanism as MicrostabilityFailureMechanism; + if (microStability != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(microStability.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenTechnicalInnovationHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - TechnicalInnovationFailureMechanism failureMechanism = assessmentSection.TechnicalInnovation; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - TechnicalInnovationFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var macroStabilityOutwards = failureMechanism as MacroStabilityOutwardsFailureMechanism; + if (macroStabilityOutwards != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(macroStabilityOutwards.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - [Test] - public void GivenFormWithAssemblyResultTotalView_WhenWaterPressureAsphaltCoverHasManualAssembly_ThenManualAssemblyUsed() - { - // Given - var random = new Random(39); - AssessmentSection assessmentSection = CreateIrrelevantAssessmentSection(); - WaterPressureAsphaltCoverFailureMechanism failureMechanism = assessmentSection.WaterPressureAsphaltCover; - failureMechanism.IsRelevant = true; - FailureMechanismTestHelper.AddSections(failureMechanism, 1); - WaterPressureAsphaltCoverFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); - sectionResult.UseManualAssembly = true; - sectionResult.ManualAssemblyCategoryGroup = random.NextEnumValue(); - - using (new AssemblyToolCalculatorFactoryConfig()) + var waterPressureAsphaltCover = failureMechanism as WaterPressureAsphaltCoverFailureMechanism; + if (waterPressureAsphaltCover != null) { - var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; - FailureMechanismAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismAssemblyCalculator; - - // When - using (ShowAssemblyResultTotalView(assessmentSection)) - { - // Then - Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(sectionResult.ManualAssemblyCategoryGroup), - calculator.FailureMechanismSectionCategories.Single()); - } + Assert.AreEqual(ManualFailureMechanismSectionAssemblyCategoryGroupConverter.Convert(waterPressureAsphaltCover.SectionResults + .Single() + .ManualAssemblyCategoryGroup), + failureMechanismAssemblyCalculator.FailureMechanismSectionCategories.Single()); } - } - private static AssessmentSection CreateIrrelevantAssessmentSection() - { - var random = new Random(39); - var assessmentSection = new AssessmentSection(random.NextEnumValue()); - assessmentSection.GetFailureMechanisms().ForEachElementDo(fm => fm.IsRelevant = false); - return assessmentSection; + throw new NotSupportedException(); } #endregion