Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Builders/FailureMechanismSectionResultViewColumnBuilder.cs =================================================================== diff -u -r884ba6ca60d8d9b50081e847a44e18c02b470138 -rca7b02f5bce42ae8f2f20bcd1503ad940826ed42 --- Ringtoets/Common/src/Ringtoets.Common.Forms/Builders/FailureMechanismSectionResultViewColumnBuilder.cs (.../FailureMechanismSectionResultViewColumnBuilder.cs) (revision 884ba6ca60d8d9b50081e847a44e18c02b470138) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Builders/FailureMechanismSectionResultViewColumnBuilder.cs (.../FailureMechanismSectionResultViewColumnBuilder.cs) (revision ca7b02f5bce42ae8f2f20bcd1503ad940826ed42) @@ -214,6 +214,19 @@ } /// + /// Adds a column to the showing the detailed assessment result type + /// for the factorized signaling norm. + /// + /// The to add the column to. + /// The data property name of the column. + /// Thrown when any parameter is null. + public static void AddDetailedAssessmentResultForFactorizedSignalingNormColumn(DataGridViewControl dataGridViewControl, string dataPropertyName) + { + AddDetailedAssessmentResultColumn(dataGridViewControl, dataPropertyName, + Resources.FailureMechanismResultView_DetailedAssessmentResultForFactorizedSignalingNorm_DisplayName); + } + + /// /// Adds a column to the showing a /// . /// @@ -310,6 +323,37 @@ Resources.FailureMechanismResultView_TailorMadeAssessmentResult_DisplayName); } + /// + /// Adds a column to the showing the detailed assessment result type. + /// + /// The to add the column to. + /// The data property name of the column. + /// The header text of the column. + /// Thrown when + /// or is null. + private static void AddDetailedAssessmentResultColumn(DataGridViewControl dataGridViewControl, string dataPropertyName, string headerText) + { + if (dataGridViewControl == null) + { + throw new ArgumentNullException(nameof(dataGridViewControl)); + } + + if (dataPropertyName == null) + { + throw new ArgumentNullException(nameof(dataPropertyName)); + } + + IEnumerable> dataSource = + CreateEnumDisplayWrappers(); + + dataGridViewControl.AddComboBoxColumn( + dataPropertyName, + headerText, + dataSource, + nameof(EnumDisplayWrapper.Value), + nameof(EnumDisplayWrapper.DisplayName)); + } + #endregion #region Assembly Category Group Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.Designer.cs =================================================================== diff -u -rbb5e6710b02c9c28009245953196a7088ef2e111 -rca7b02f5bce42ae8f2f20bcd1503ad940826ed42 --- Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision bb5e6710b02c9c28009245953196a7088ef2e111) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision ca7b02f5bce42ae8f2f20bcd1503ad940826ed42) @@ -1486,6 +1486,17 @@ } /// + /// Looks up a localized string similar to Gedetailleerde toets per vak + ///Cat. Iv - IIv. + /// + public static string FailureMechanismResultView_DetailedAssessmentResultForFactorizedSignalingNorm_DisplayName { + get { + return ResourceManager.GetString("FailureMechanismResultView_DetailedAssessmentResultForFactorizedSignalingNorm_Dis" + + "playName", resourceCulture); + } + } + + /// /// Looks up a localized string similar to Assemblageresultaat ///handmatig. /// Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.resx =================================================================== diff -u -rbb5e6710b02c9c28009245953196a7088ef2e111 -rca7b02f5bce42ae8f2f20bcd1503ad940826ed42 --- Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.resx (.../Resources.resx) (revision bb5e6710b02c9c28009245953196a7088ef2e111) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.resx (.../Resources.resx) (revision ca7b02f5bce42ae8f2f20bcd1503ad940826ed42) @@ -1362,4 +1362,8 @@ Totale lengte van het traject in meters (afgerond). + + Gedetailleerde toets per vak +Cat. Iv - IIv + \ No newline at end of file Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/Builders/FailureMechanismSectionResultViewColumnBuilderTest.cs =================================================================== diff -u -r884ba6ca60d8d9b50081e847a44e18c02b470138 -rca7b02f5bce42ae8f2f20bcd1503ad940826ed42 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/Builders/FailureMechanismSectionResultViewColumnBuilderTest.cs (.../FailureMechanismSectionResultViewColumnBuilderTest.cs) (revision 884ba6ca60d8d9b50081e847a44e18c02b470138) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/Builders/FailureMechanismSectionResultViewColumnBuilderTest.cs (.../FailureMechanismSectionResultViewColumnBuilderTest.cs) (revision ca7b02f5bce42ae8f2f20bcd1503ad940826ed42) @@ -330,6 +330,54 @@ } } + [Test] + public void AddDetailedAssessmentResultForFactorizedSignalingNormColumn_DataGridViewControlNull_ThrowsArgumentNullException() + { + // Call + TestDelegate test = () => FailureMechanismSectionResultViewColumnBuilder.AddDetailedAssessmentResultForFactorizedSignalingNormColumn(null, "property"); + + // Assert + var exception = Assert.Throws(test); + Assert.AreEqual("dataGridViewControl", exception.ParamName); + } + + [Test] + public void AddDetailedAssessmentResultForFactorizedSignalingNormColumn_DataPropertyNameNull_ThrowsArgumentNullException() + { + // Call + TestDelegate test = () => FailureMechanismSectionResultViewColumnBuilder.AddDetailedAssessmentResultForFactorizedSignalingNormColumn(new DataGridViewControl(), null); + + // Assert + var exception = Assert.Throws(test); + Assert.AreEqual("dataPropertyName", exception.ParamName); + } + + [Test] + public void AddDetailedAssessmentResultForFactorizedSignalingNormColumn_WithParameters_AddsColumnToDataGridViewControl() + { + // Setup + using (var form = new Form()) + using (var control = new DataGridViewControl()) + { + form.Controls.Add(control); + form.Show(); + var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject; + + // Precondition + Assert.AreEqual(0, dataGridView.ColumnCount); + + // Call + FailureMechanismSectionResultViewColumnBuilder.AddDetailedAssessmentResultForFactorizedSignalingNormColumn(control, dataPropertyName); + + // Assert + Assert.AreEqual(1, dataGridView.ColumnCount); + + var columnData = (DataGridViewComboBoxColumn) dataGridView.Columns[0]; + Assert.AreEqual(dataPropertyName, columnData.DataPropertyName); + Assert.AreEqual("Gedetailleerde toets per vak\r\nCat. Iv - IIv", columnData.HeaderText); + } + } + #endregion #region Tailor Made Assessment