Index: Riskeer/Piping/src/Riskeer.Piping.Forms/Views/PipingFailureMechanismSectionResultRow.cs =================================================================== diff -u -r09aa1ee4312c8a90799357e7d60945b047d56891 -ree7c1a79ee5f35f762d82280dfc3a18ea2d35367 --- Riskeer/Piping/src/Riskeer.Piping.Forms/Views/PipingFailureMechanismSectionResultRow.cs (.../PipingFailureMechanismSectionResultRow.cs) (revision 09aa1ee4312c8a90799357e7d60945b047d56891) +++ Riskeer/Piping/src/Riskeer.Piping.Forms/Views/PipingFailureMechanismSectionResultRow.cs (.../PipingFailureMechanismSectionResultRow.cs) (revision ee7c1a79ee5f35f762d82280dfc3a18ea2d35367) @@ -48,6 +48,10 @@ private readonly int probabilityRefinementTypeIndex; private readonly int refinedProfileProbabilityIndex; private readonly int refinedSectionProbabilityIndex; + private readonly int profileProbabilityIndex; + private readonly int sectionProbabilityIndex; + private readonly int resultingSectionNIndex; + private readonly int assemblyGroupIndex; private readonly IPipingFailureMechanismSectionResultCalculateProbabilityStrategy calculateProbabilityStrategy; private readonly PipingFailureMechanism failureMechanism; @@ -103,6 +107,10 @@ probabilityRefinementTypeIndex = constructionProperties.ProbabilityRefinementTypeIndex; refinedProfileProbabilityIndex = constructionProperties.RefinedProfileProbabilityIndex; refinedSectionProbabilityIndex = constructionProperties.RefinedSectionProbabilityIndex; + profileProbabilityIndex = constructionProperties.ProfileProbabilityIndex; + sectionProbabilityIndex = constructionProperties.SectionProbabilityIndex; + resultingSectionNIndex = constructionProperties.ResultingSectionNIndex; + assemblyGroupIndex = constructionProperties.AssemblyGroupIndex; CreateColumnStateDefinitions(); @@ -301,6 +309,10 @@ ColumnStateDefinitions.Add(probabilityRefinementTypeIndex, new DataGridViewColumnStateDefinition()); ColumnStateDefinitions.Add(refinedProfileProbabilityIndex, new DataGridViewColumnStateDefinition()); ColumnStateDefinitions.Add(refinedSectionProbabilityIndex, new DataGridViewColumnStateDefinition()); + ColumnStateDefinitions.Add(profileProbabilityIndex, DataGridViewColumnStateDefinitionFactory.CreateReadOnlyColumnStateDefinition()); + ColumnStateDefinitions.Add(sectionProbabilityIndex, DataGridViewColumnStateDefinitionFactory.CreateReadOnlyColumnStateDefinition()); + ColumnStateDefinitions.Add(resultingSectionNIndex, DataGridViewColumnStateDefinitionFactory.CreateReadOnlyColumnStateDefinition()); + ColumnStateDefinitions.Add(assemblyGroupIndex, DataGridViewColumnStateDefinitionFactory.CreateReadOnlyColumnStateDefinition()); } private void UpdateColumnStateDefinitions() @@ -373,6 +385,26 @@ /// Sets the refined section probability index. /// public int RefinedSectionProbabilityIndex { internal get; set; } + + /// + /// Sets the profile probability index. + /// + public int ProfileProbabilityIndex { internal get; set; } + + /// + /// Sets the section probability index. + /// + public int SectionProbabilityIndex { internal get; set; } + + /// + /// Sets the resulting section N index. + /// + public int ResultingSectionNIndex { internal get; set; } + + /// + /// Sets the assembly group index. + /// + public int AssemblyGroupIndex { internal get; set; } } } } \ No newline at end of file Index: Riskeer/Piping/test/Riskeer.Piping.Forms.Test/Views/PipingFailureMechanismSectionResultRowTest.cs =================================================================== diff -u -r09aa1ee4312c8a90799357e7d60945b047d56891 -ree7c1a79ee5f35f762d82280dfc3a18ea2d35367 --- Riskeer/Piping/test/Riskeer.Piping.Forms.Test/Views/PipingFailureMechanismSectionResultRowTest.cs (.../PipingFailureMechanismSectionResultRowTest.cs) (revision 09aa1ee4312c8a90799357e7d60945b047d56891) +++ Riskeer/Piping/test/Riskeer.Piping.Forms.Test/Views/PipingFailureMechanismSectionResultRowTest.cs (.../PipingFailureMechanismSectionResultRowTest.cs) (revision ee7c1a79ee5f35f762d82280dfc3a18ea2d35367) @@ -53,7 +53,11 @@ FurtherAnalysisNeededIndex = 5, ProbabilityRefinementTypeIndex = 6, RefinedProfileProbabilityIndex = 7, - RefinedSectionProbabilityIndex = 8 + RefinedSectionProbabilityIndex = 8, + ProfileProbabilityIndex = 9, + SectionProbabilityIndex = 10, + ResultingSectionNIndex = 11, + AssemblyGroupIndex = 12 }; [Test] @@ -183,7 +187,7 @@ nameof(PipingFailureMechanismSectionResultRow.RefinedSectionProbability)); IDictionary columnStateDefinitions = row.ColumnStateDefinitions; - Assert.AreEqual(7, columnStateDefinitions.Count); + Assert.AreEqual(11, columnStateDefinitions.Count); DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.InitialFailureMechanismResultIndex); DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.InitialFailureMechanismResultProfileProbabilityIndex); @@ -192,11 +196,15 @@ DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.ProbabilityRefinementTypeIndex); DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.RefinedProfileProbabilityIndex); DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.RefinedSectionProbabilityIndex); + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.ProbabilityRefinementTypeIndex); + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.SectionProbabilityIndex); + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.ResultingSectionNIndex); + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnStateDefinition(columnStateDefinitions, ConstructionProperties.AssemblyGroupIndex); } mocks.VerifyAll(); } - + [Test] public void Constructor_AssemblyRan_ReturnCategoryGroups() { @@ -219,14 +227,15 @@ random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextEnumValue()); // Call - var row = new PipingFailureMechanismSectionResultRow(result, calculateStrategy, failureMechanism,new AssessmentSectionStub(), ConstructionProperties); + var row = new PipingFailureMechanismSectionResultRow(result, calculateStrategy, failureMechanism, new AssessmentSectionStub(), ConstructionProperties); // Assert Assert.AreEqual(calculator.FailureMechanismSectionAssemblyResultOutput.ProfileProbability, row.ProfileProbability); Assert.AreEqual(calculator.FailureMechanismSectionAssemblyResultOutput.SectionProbability, row.SectionProbability); Assert.AreEqual(calculator.FailureMechanismSectionAssemblyResultOutput.N, row.ResultingSectionN); Assert.AreEqual(calculator.FailureMechanismSectionAssemblyResultOutput.AssemblyGroup.ToString(), row.AssemblyGroup); } + mocks.VerifyAll(); } @@ -494,6 +503,36 @@ #region Column States [Test] + public void Constructor_Always_ExpectedColumnStates() + { + // Setup + var mocks = new MockRepository(); + var calculateStrategy = mocks.Stub(); + mocks.ReplayAll(); + + FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection(); + var result = new PipingFailureMechanismSectionResult(section); + + using (new AssemblyToolCalculatorFactoryConfig()) + { + // Call + var row = new PipingFailureMechanismSectionResultRow(result, calculateStrategy, new PipingFailureMechanism(), new AssessmentSectionStub(), ConstructionProperties); + + // Assert + IDictionary columnStateDefinitions = row.ColumnStateDefinitions; + + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnState( + columnStateDefinitions[ConstructionProperties.ProfileProbabilityIndex], true, true); + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnState( + columnStateDefinitions[ConstructionProperties.SectionProbabilityIndex], true, true); + DataGridViewControlColumnStateDefinitionTestHelper.AssertColumnState( + columnStateDefinitions[ConstructionProperties.ResultingSectionNIndex], true, true); + } + + mocks.VerifyAll(); + } + + [Test] [TestCase(true)] [TestCase(false)] public void Constructor_WithIsRelevant_ExpectedColumnStates(bool isRelevant)