Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Builders/FailureMechanismSectionResultViewColumnBuilder.cs =================================================================== diff -u -r1bb3bb7c19c360b158dc4b7e915726dc8a125858 -r1ac509f59c96733269502801c223392bd6b5df16 --- Ringtoets/Common/src/Ringtoets.Common.Forms/Builders/FailureMechanismSectionResultViewColumnBuilder.cs (.../FailureMechanismSectionResultViewColumnBuilder.cs) (revision 1bb3bb7c19c360b158dc4b7e915726dc8a125858) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Builders/FailureMechanismSectionResultViewColumnBuilder.cs (.../FailureMechanismSectionResultViewColumnBuilder.cs) (revision 1ac509f59c96733269502801c223392bd6b5df16) @@ -297,6 +297,19 @@ Resources.FailureMechanismResultView_TailorMadeAssessmentProbability_DisplayName); } + /// + /// Adds a column to the showing the tailor made + /// category group. + /// + /// The to add the column to. + /// The data property name of the column. + /// Thrown when any parameter is null. + public static void AddTailorMadeAssessmentCategoryGroupColumn(DataGridViewControl dataGridViewControl, string dataPropertyName) + { + AddSelectableAssemblyCategoryGroupColumn(dataGridViewControl, dataPropertyName, + Resources.FailureMechanismResultView_TailorMadeAssessmentResult_DisplayName); + } + #endregion #region Assembly Category Group Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/Builders/FailureMechanismSectionResultViewColumnBuilderTest.cs =================================================================== diff -u -re3f913fddac4cfa598ef5439ce6b832f354d7dd8 -r1ac509f59c96733269502801c223392bd6b5df16 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/Builders/FailureMechanismSectionResultViewColumnBuilderTest.cs (.../FailureMechanismSectionResultViewColumnBuilderTest.cs) (revision e3f913fddac4cfa598ef5439ce6b832f354d7dd8) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/Builders/FailureMechanismSectionResultViewColumnBuilderTest.cs (.../FailureMechanismSectionResultViewColumnBuilderTest.cs) (revision 1ac509f59c96733269502801c223392bd6b5df16) @@ -494,6 +494,60 @@ } } + [Test] + public void AddTailorMadeAssessmentCategoryGroupColumn_DataGridViewControlNull_ThrowsArgumentNullException() + { + // Call + TestDelegate test = () => FailureMechanismSectionResultViewColumnBuilder.AddTailorMadeAssessmentCategoryGroupColumn(null, "property"); + + // Assert + var exception = Assert.Throws(test); + Assert.AreEqual("dataGridViewControl", exception.ParamName); + } + + [Test] + public void AddTailorMadeAssessmentCategoryGroupColumn_DataPropertyNameNull_ThrowsArgumentNullException() + { + // Call + TestDelegate test = () => FailureMechanismSectionResultViewColumnBuilder.AddTailorMadeAssessmentCategoryGroupColumn(new DataGridViewControl(), null); + + // Assert + var exception = Assert.Throws(test); + Assert.AreEqual("dataPropertyName", exception.ParamName); + } + + [Test] + public void AddTailorMadeAssessmentCategoryGroupColumn_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.AddTailorMadeAssessmentCategoryGroupColumn(control, dataPropertyName); + + // Assert + Assert.AreEqual(1, dataGridView.ColumnCount); + + var columnData = (DataGridViewComboBoxColumn)dataGridView.Columns[0]; + Assert.AreEqual(dataPropertyName, columnData.DataPropertyName); + Assert.AreEqual("Toets op maat", columnData.HeaderText); + Assert.AreEqual("Value", columnData.ValueMember); + Assert.AreEqual("DisplayName", columnData.DisplayMember); + + IEnumerable> expectedDataSource = + CreateExpectedEnumDisplayWrappers(); + AssertEnumDisplayWrappersAreEqual(expectedDataSource, (EnumDisplayWrapper[])columnData.DataSource); + } + } + #endregion #region Assessment Assembly