Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/Views/ClosingStructuresFailureMechanismResultViewTest.cs =================================================================== diff -u -r2a81f01756e227d5ce93717b21b87e8a5cd5fcbb -r60fa76892cc5e19f5b2ee92b2e121f33a032c35e --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/Views/ClosingStructuresFailureMechanismResultViewTest.cs (.../ClosingStructuresFailureMechanismResultViewTest.cs) (revision 2a81f01756e227d5ce93717b21b87e8a5cd5fcbb) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/Views/ClosingStructuresFailureMechanismResultViewTest.cs (.../ClosingStructuresFailureMechanismResultViewTest.cs) (revision 60fa76892cc5e19f5b2ee92b2e121f33a032c35e) @@ -22,9 +22,11 @@ using System; using System.Linq; using System.Windows.Forms; +using Core.Common.TestUtil; using NUnit.Extensions.Forms; using NUnit.Framework; using Rhino.Mocks; +using Ringtoets.AssemblyTool.Data; using Ringtoets.AssemblyTool.KernelWrapper.Calculators; using Ringtoets.AssemblyTool.KernelWrapper.TestUtil.Calculators; using Ringtoets.AssemblyTool.KernelWrapper.TestUtil.Calculators.Assembly; @@ -118,7 +120,7 @@ using (ShowFailureMechanismResultsView(new ClosingStructuresFailureMechanism())) { // Then - var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject; + DataGridView dataGridView = GetDataGridView(); Assert.AreEqual(columnCount, dataGridView.ColumnCount); Assert.IsTrue(dataGridView.Columns[detailedAssessmentProbabilityIndex].ReadOnly); @@ -184,7 +186,7 @@ using (new AssemblyToolCalculatorFactoryConfig()) using (ShowFailureMechanismResultsView(failureMechanism)) { - var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject; + DataGridView dataGridView = GetDataGridView(); // Assert DataGridViewRowCollection rows = dataGridView.Rows; @@ -234,6 +236,41 @@ } } + [Test] + public void GivenFailureMechanismResultView_WhenRowUpdated_ThenCombinedAssemblyProbabilityColumnAutoResizes() + { + // Given + var random = new Random(39); + var failureMechanism = new ClosingStructuresFailureMechanism(); + FailureMechanismTestHelper.AddSections(failureMechanism, 1); + + using (new AssemblyToolCalculatorFactoryConfig()) + using (ShowFailureMechanismResultsView(failureMechanism)) + { + DataGridView dataGridView = GetDataGridView(); + var row = (ClosingStructuresFailureMechanismSectionResultRow) dataGridView.Rows[0].DataBoundItem; + + var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; + FailureMechanismSectionAssemblyCalculatorStub calculator = calculatorFactory.LastCreatedFailureMechanismSectionAssemblyCalculator; + calculator.CombinedAssemblyOutput = new FailureMechanismSectionAssembly(0.1, random.NextEnumValue()); + DataGridViewCell dataGridViewCell = dataGridView.Rows[0].Cells[combinedAssemblyProbabilityIndex]; + int initialWidth = dataGridViewCell.OwningColumn.Width; + + // When + calculator.CombinedAssemblyOutput = new FailureMechanismSectionAssembly(0.0000000000000000000000000001, random.NextEnumValue()); + row.TailorMadeAssessmentProbability = random.NextDouble(); + + // Then + int newWidth = dataGridViewCell.OwningColumn.Width; + Assert.Less(initialWidth, newWidth); + } + } + + private static DataGridView GetDataGridView() + { + return (DataGridView) new ControlTester("dataGridView").TheObject; + } + [TestFixture] public class ClosingStructuresFailureMechanismAssemblyControlTest : FailureMechanismAssemblyResultWithProbabilityControlTestFixture< ClosingStructuresFailureMechanismResultView,