Index: Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Forms/Views/DuneLocationsView.cs
===================================================================
diff -u -r8b1f55193a7e6565f7e837bcf67f77c60eacf94b -r90fb0bee68ae22094e4ef328dc563985f63365fe
--- Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Forms/Views/DuneLocationsView.cs (.../DuneLocationsView.cs) (revision 8b1f55193a7e6565f7e837bcf67f77c60eacf94b)
+++ Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Forms/Views/DuneLocationsView.cs (.../DuneLocationsView.cs) (revision 90fb0bee68ae22094e4ef328dc563985f63365fe)
@@ -26,6 +26,7 @@
using Ringtoets.Common.Data.AssessmentSection;
using Ringtoets.Common.Forms.Views;
using Ringtoets.DuneErosion.Data;
+using Ringtoets.DuneErosion.Forms.GuiServices;
using Ringtoets.DuneErosion.Forms.PresentationObjects;
using Ringtoets.DuneErosion.Forms.Properties;
using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources;
@@ -70,6 +71,18 @@
///
public IAssessmentSection AssessmentSection { get; set; }
+ ///
+ /// Gets or sets the for which the
+ /// locations are shown.
+ ///
+ public DuneErosionFailureMechanism FailureMechanism { get; set; }
+
+ ///
+ /// Gets or sets the
+ /// to perform calculations with.
+ ///
+ public DuneLocationCalculationGuiService CalculationGuiService { get; set; }
+
protected override void Dispose(bool disposing)
{
duneLocationsObserver.Dispose();
@@ -112,8 +125,33 @@
dataGridViewControl.SetDataSource(locations?.Select(l => new DuneLocationRow(l)).ToArray());
}
- protected override void CalculateForSelectedRows() {}
+ protected override void CalculateForSelectedRows()
+ {
+ if (CalculationGuiService == null)
+ {
+ return;
+ }
+ var selectedLocations = GetSelectedLocations();
+ HandleCalculateSelectedLocations(selectedLocations);
+ }
+
+ private void HandleCalculateSelectedLocations(IEnumerable locations)
+ {
+ CalculationGuiService.Calculate(locations,
+ FailureMechanism,
+ AssessmentSection);
+
+ ((IObservable) Data).NotifyObservers();
+ }
+
+ private IEnumerable GetSelectedLocations()
+ {
+ return GetCalculatableRows().Where(r => r.ToCalculate)
+ .Cast()
+ .Select(r => r.DuneLocation);
+ }
+
private void UpdateDuneLocations()
{
if (IsDataGridDataSourceChanged())
Index: Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Plugin/DuneErosionPlugin.cs
===================================================================
diff -u -rc9bd6bb2616d76ccae091516fbd2f5b575aafdfa -r90fb0bee68ae22094e4ef328dc563985f63365fe
--- Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Plugin/DuneErosionPlugin.cs (.../DuneErosionPlugin.cs) (revision c9bd6bb2616d76ccae091516fbd2f5b575aafdfa)
+++ Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Plugin/DuneErosionPlugin.cs (.../DuneErosionPlugin.cs) (revision 90fb0bee68ae22094e4ef328dc563985f63365fe)
@@ -123,7 +123,12 @@
Image = RingtoetsCommonFormsResources.GenericInputOutputIcon,
GetViewData = context => context.WrappedData,
CloseForData = CloseDuneLocationViewForData,
- AfterCreate = (view, context) => view.AssessmentSection = context.AssessmentSection,
+ AfterCreate = (view, context) =>
+ {
+ view.AssessmentSection = context.AssessmentSection;
+ view.FailureMechanism = context.FailureMechanism;
+ view.CalculationGuiService = duneLocationCalculationGuiService;
+ },
AdditionalDataCheck = context => context.WrappedData.Any()
};
}
Index: Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Plugin/Ringtoets.DuneErosion.Plugin.csproj
===================================================================
diff -u -r363b9edc0d685d5bcaf41411604c5996c013ef89 -r90fb0bee68ae22094e4ef328dc563985f63365fe
--- Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Plugin/Ringtoets.DuneErosion.Plugin.csproj (.../Ringtoets.DuneErosion.Plugin.csproj) (revision 363b9edc0d685d5bcaf41411604c5996c013ef89)
+++ Ringtoets/DuneErosion/src/Ringtoets.DuneErosion.Plugin/Ringtoets.DuneErosion.Plugin.csproj (.../Ringtoets.DuneErosion.Plugin.csproj) (revision 90fb0bee68ae22094e4ef328dc563985f63365fe)
@@ -90,11 +90,6 @@
Ringtoets.Common.Forms
False
-
- {888d4097-8bc2-4703-9fb1-8744c94d525e}
- Ringtoets.HydraRing.Calculation
- False
-
{D1068432-C172-4AA6-847B-D9DEB4C6DE26}
Ringtoets.DuneErosion.Data
@@ -110,11 +105,6 @@
Ringtoets.DuneErosion.IO
False
-
- {FDEE3429-0BB1-4AD2-813A-06FAD425EA6F}
- Ringtoets.DuneErosion.Service
- False
-
Index: Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Forms.Test/GuiServices/DuneLocationCalculationGuiServiceTest.cs
===================================================================
diff -u -r54cb5f9ab9e6f6fe428a1d6f7b07c81a50e2fcab -r90fb0bee68ae22094e4ef328dc563985f63365fe
--- Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Forms.Test/GuiServices/DuneLocationCalculationGuiServiceTest.cs (.../DuneLocationCalculationGuiServiceTest.cs) (revision 54cb5f9ab9e6f6fe428a1d6f7b07c81a50e2fcab)
+++ Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Forms.Test/GuiServices/DuneLocationCalculationGuiServiceTest.cs (.../DuneLocationCalculationGuiServiceTest.cs) (revision 90fb0bee68ae22094e4ef328dc563985f63365fe)
@@ -123,77 +123,76 @@
// Setup
string validFilePath = Path.Combine(testDataPath, "complete.sqlite");
- var failureMechanism = new DuneErosionFailureMechanism
- {
- Contribution = 10
- };
- failureMechanism.DuneLocations.AddRange(new[]
- {
- new DuneLocation(1300001, "A", new Point2D(0, 0), new DuneLocation.ConstructionProperties
- {
- CoastalAreaId = 0,
- Offset = 0,
- Orientation = 0,
- D50 = 0.000007
- }),
- new DuneLocation(1300002, "B", new Point2D(0, 0), new DuneLocation.ConstructionProperties
- {
- CoastalAreaId = 0,
- Offset = 0,
- Orientation = 0,
- D50 = 0.000007
- })
- });
+ var failureMechanism = new DuneErosionFailureMechanism
+ {
+ Contribution = 10
+ };
+ failureMechanism.DuneLocations.AddRange(new[]
+ {
+ new DuneLocation(1300001, "A", new Point2D(0, 0), new DuneLocation.ConstructionProperties
+ {
+ CoastalAreaId = 0,
+ Offset = 0,
+ Orientation = 0,
+ D50 = 0.000007
+ }),
+ new DuneLocation(1300002, "B", new Point2D(0, 0), new DuneLocation.ConstructionProperties
+ {
+ CoastalAreaId = 0,
+ Offset = 0,
+ Orientation = 0,
+ D50 = 0.000007
+ })
+ });
- var hydraulicBoundaryDatabase = new HydraulicBoundaryDatabase
- {
- FilePath = validFilePath
- };
+ var hydraulicBoundaryDatabase = new HydraulicBoundaryDatabase
+ {
+ FilePath = validFilePath
+ };
var mocks = new MockRepository();
- var assessmentSection = mocks.Stub();
- assessmentSection.HydraulicBoundaryDatabase = hydraulicBoundaryDatabase;
- assessmentSection.Stub(a => a.Id).Return("13-1");
- assessmentSection.Stub(a => a.GetFailureMechanisms()).Return(new[]
- {
- failureMechanism
- });
- assessmentSection.Stub(a => a.FailureMechanismContribution)
- .Return(new FailureMechanismContribution(new[]
- {
- failureMechanism
- }, 1, 1.0 / 200));
+ var assessmentSection = mocks.Stub();
+ assessmentSection.HydraulicBoundaryDatabase = hydraulicBoundaryDatabase;
+ assessmentSection.Stub(a => a.Id).Return("13-1");
+ assessmentSection.Stub(a => a.GetFailureMechanisms()).Return(new[]
+ {
+ failureMechanism
+ });
+ assessmentSection.Stub(a => a.FailureMechanismContribution)
+ .Return(new FailureMechanismContribution(new[]
+ {
+ failureMechanism
+ }, 1, 1.0/200));
- mocks.ReplayAll();
+ mocks.ReplayAll();
-
using (var viewParent = new Form())
using (new HydraRingCalculatorFactoryConfig())
- {
+ {
var guiService = new DuneLocationCalculationGuiService(viewParent);
// Call
- TestHelper.AssertLogMessages(() => guiService.Calculate(failureMechanism.DuneLocations,
- failureMechanism,
- assessmentSection),
- messages =>
- {
- var messageList = messages.ToList();
+ TestHelper.AssertLogMessages(() => guiService.Calculate(failureMechanism.DuneLocations,
+ failureMechanism,
+ assessmentSection),
+ messages =>
+ {
+ var messageList = messages.ToList();
- // Assert
- Assert.AreEqual(10, messageList.Count);
- StringAssert.StartsWith("Berekening van 'A' gestart om: ", messageList[0]);
- Assert.AreEqual("Duinafslag berekening voor locatie 'A' is niet geconvergeerd.", messageList[1]);
- StringAssert.StartsWith("Duinafslag berekening is uitgevoerd op de tijdelijke locatie", messageList[2]);
- StringAssert.StartsWith("Berekening van 'A' beëindigd om: ", messageList[3]);
- StringAssert.StartsWith("Berekening van 'B' gestart om: ", messageList[4]);
- Assert.AreEqual("Duinafslag berekening voor locatie 'B' is niet geconvergeerd.", messageList[5]);
- StringAssert.StartsWith("Duinafslag berekening is uitgevoerd op de tijdelijke locatie", messageList[6]);
- StringAssert.StartsWith("Berekening van 'B' beëindigd om: ", messageList[7]);
- Assert.AreEqual("Uitvoeren van 'A' is gelukt.", messageList[8]);
- Assert.AreEqual("Uitvoeren van 'B' is gelukt.", messageList[9]);
- });
- }
+ // Assert
+ Assert.AreEqual(10, messageList.Count);
+ StringAssert.StartsWith("Berekening van 'A' gestart om: ", messageList[0]);
+ Assert.AreEqual("Duinafslag berekening voor locatie 'A' is niet geconvergeerd.", messageList[1]);
+ StringAssert.StartsWith("Duinafslag berekening is uitgevoerd op de tijdelijke locatie", messageList[2]);
+ StringAssert.StartsWith("Berekening van 'A' beëindigd om: ", messageList[3]);
+ StringAssert.StartsWith("Berekening van 'B' gestart om: ", messageList[4]);
+ Assert.AreEqual("Duinafslag berekening voor locatie 'B' is niet geconvergeerd.", messageList[5]);
+ StringAssert.StartsWith("Duinafslag berekening is uitgevoerd op de tijdelijke locatie", messageList[6]);
+ StringAssert.StartsWith("Berekening van 'B' beëindigd om: ", messageList[7]);
+ Assert.AreEqual("Uitvoeren van 'A' is gelukt.", messageList[8]);
+ Assert.AreEqual("Uitvoeren van 'B' is gelukt.", messageList[9]);
+ });
}
}
+ }
}
\ No newline at end of file
Index: Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Forms.Test/Views/DuneLocationsViewTest.cs
===================================================================
diff -u -r54cb5f9ab9e6f6fe428a1d6f7b07c81a50e2fcab -r90fb0bee68ae22094e4ef328dc563985f63365fe
--- Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Forms.Test/Views/DuneLocationsViewTest.cs (.../DuneLocationsViewTest.cs) (revision 54cb5f9ab9e6f6fe428a1d6f7b07c81a50e2fcab)
+++ Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Forms.Test/Views/DuneLocationsViewTest.cs (.../DuneLocationsViewTest.cs) (revision 90fb0bee68ae22094e4ef328dc563985f63365fe)
@@ -20,21 +20,27 @@
// All rights reserved.
using System;
+using System.Collections.Generic;
using System.Globalization;
+using System.IO;
using System.Linq;
using System.Windows.Forms;
using Core.Common.Base;
using Core.Common.Base.Geometry;
+using Core.Common.TestUtil;
using NUnit.Extensions.Forms;
using NUnit.Framework;
+using Rhino.Mocks;
+using Ringtoets.Common.Data.AssessmentSection;
+using Ringtoets.Common.Data.Contribution;
+using Ringtoets.Common.Data.FailureMechanism;
using Ringtoets.Common.Data.Hydraulics;
using Ringtoets.Common.Forms.Views;
using Ringtoets.DuneErosion.Data;
+using Ringtoets.DuneErosion.Forms.GuiServices;
using Ringtoets.DuneErosion.Forms.PresentationObjects;
using Ringtoets.DuneErosion.Forms.Views;
-using System.Collections.Generic;
-using Ringtoets.Common.Data.TestUtil;
-using Ringtoets.DuneErosion.Data.TestUtil;
+using Ringtoets.HydraRing.Calculation.TestUtil.Calculator;
namespace Ringtoets.DuneErosion.Forms.Test.Views
{
@@ -51,6 +57,7 @@
private const int waveHeightColumnIndex = 7;
private const int wavePeriodColumnIndex = 8;
private const int d50ColumnIndex = 9;
+ private readonly string testDataPath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO, "HydraulicBoundaryDatabaseImporter");
private Form testForm;
@@ -85,41 +92,41 @@
ShowDuneLocationsView();
// Assert
- var dataGridView = (DataGridView)new ControlTester("dataGridView").TheObject;
+ var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
Assert.AreEqual(10, dataGridView.ColumnCount);
- var locationCalculateColumn = (DataGridViewCheckBoxColumn)dataGridView.Columns[locationCalculateColumnIndex];
+ var locationCalculateColumn = (DataGridViewCheckBoxColumn) dataGridView.Columns[locationCalculateColumnIndex];
Assert.AreEqual("Berekenen", locationCalculateColumn.HeaderText);
- var locationNameColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[locationNameColumnIndex];
+ var locationNameColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[locationNameColumnIndex];
Assert.AreEqual("Naam", locationNameColumn.HeaderText);
- var locationIdColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[locationIdColumnIndex];
+ var locationIdColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[locationIdColumnIndex];
Assert.AreEqual("ID", locationIdColumn.HeaderText);
- var locationColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[locationColumnIndex];
+ var locationColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[locationColumnIndex];
Assert.AreEqual("Coördinaten [m]", locationColumn.HeaderText);
- var coastalAreaIdColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[coastalAreaIdColumnIndex];
+ var coastalAreaIdColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[coastalAreaIdColumnIndex];
Assert.AreEqual("Kustvaknummer", coastalAreaIdColumn.HeaderText);
- var offssetColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[offsetColumnIndex];
+ var offssetColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[offsetColumnIndex];
Assert.AreEqual("Metrering [dam]", offssetColumn.HeaderText);
- var waterLevelColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[waterLevelColumnIndex];
+ var waterLevelColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[waterLevelColumnIndex];
Assert.AreEqual("Rekenwaarde waterstand [m+NAP]", waterLevelColumn.HeaderText);
- var waveHeightColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[waveHeightColumnIndex];
+ var waveHeightColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[waveHeightColumnIndex];
Assert.AreEqual("Rekenwaarde Hs [m]", waveHeightColumn.HeaderText);
- var wavePeriodColumn = (DataGridViewTextBoxColumn)dataGridView.Columns[wavePeriodColumnIndex];
+ var wavePeriodColumn = (DataGridViewTextBoxColumn) dataGridView.Columns[wavePeriodColumnIndex];
Assert.AreEqual("Rekenwaarde Tp [s]", wavePeriodColumn.HeaderText);
- var d50Column = (DataGridViewTextBoxColumn)dataGridView.Columns[d50ColumnIndex];
+ var d50Column = (DataGridViewTextBoxColumn) dataGridView.Columns[d50ColumnIndex];
Assert.AreEqual("Rekenwaarde d50 [m]", d50Column.HeaderText);
var buttonTester = new ButtonTester("CalculateForSelectedButton", testForm);
- var button = (Button)buttonTester.TheObject;
+ var button = (Button) buttonTester.TheObject;
Assert.IsFalse(button.Enabled);
}
@@ -161,7 +168,7 @@
ShowFullyConfiguredDuneLocationsView();
// Assert
- var dataGridView = (DataGridView)new ControlTester("dataGridView").TheObject;
+ var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
var rows = dataGridView.Rows;
Assert.AreEqual(2, rows.Count);
@@ -209,14 +216,14 @@
// Call
using (var view = ShowFullyConfiguredDuneLocationsView())
{
- var dataGridView = (DataGridView)new ControlTester("dataGridView").TheObject;
+ var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
var selectedLocationRow = dataGridView.Rows[0];
selectedLocationRow.Cells[0].Value = true;
-
+
// Assert
var selection = view.Selection as DuneLocationContext;
var dataBoundItem = selectedLocationRow.DataBoundItem as DuneLocationRow;
-
+
Assert.NotNull(selection);
Assert.NotNull(dataBoundItem);
Assert.AreSame(dataBoundItem.DuneLocation, selection.DuneLocation);
@@ -228,21 +235,21 @@
{
// Setup
DuneLocationsView view = ShowFullyConfiguredDuneLocationsView();
- ObservableList locations = (ObservableList)view.Data;
+ ObservableList locations = (ObservableList) view.Data;
// Precondition
- var dataGridView = (DataGridView)new ControlTester("dataGridView").TheObject;
+ var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
var dataGridViewSource = dataGridView.DataSource;
var rows = dataGridView.Rows;
rows[0].Cells[locationCalculateColumnIndex].Value = true;
Assert.AreEqual(2, rows.Count);
var duneLocation = new DuneLocation(10, "10", new Point2D(10.0, 10.0), new DuneLocation.ConstructionProperties
- {
- CoastalAreaId = 3,
- Offset = 80,
- D50 = 0.000321
- })
+ {
+ CoastalAreaId = 3,
+ Offset = 80,
+ D50 = 0.000321
+ })
{
Output = new DuneLocationOutput(CalculationConvergence.CalculatedConverged, new DuneLocationOutput.ConstructionProperties
{
@@ -281,30 +288,30 @@
{
// Setup
DuneLocationsView view = ShowFullyConfiguredDuneLocationsView();
- ObservableList locations = (ObservableList)view.Data;
+ ObservableList locations = (ObservableList) view.Data;
// Precondition
- var dataGridView = (DataGridView)new ControlTester("dataGridView").TheObject;
+ var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
var rows = dataGridView.Rows;
Assert.AreEqual(2, rows.Count);
DataGridViewRow firstRow = rows[0];
DataGridViewRow secondRow = rows[1];
Assert.AreEqual("-", firstRow.Cells[waterLevelColumnIndex].FormattedValue);
Assert.AreEqual("-", firstRow.Cells[waveHeightColumnIndex].FormattedValue);
- Assert.AreEqual("-", firstRow.Cells[wavePeriodColumnIndex].FormattedValue);
+ Assert.AreEqual("-", firstRow.Cells[wavePeriodColumnIndex].FormattedValue);
Assert.AreEqual(1.23.ToString(CultureInfo.CurrentCulture), secondRow.Cells[waterLevelColumnIndex].FormattedValue);
Assert.AreEqual(2.34.ToString(CultureInfo.CurrentCulture), secondRow.Cells[waveHeightColumnIndex].FormattedValue);
Assert.AreEqual(3.45.ToString(CultureInfo.CurrentCulture), secondRow.Cells[wavePeriodColumnIndex].FormattedValue);
locations.ForEach(loc =>
{
loc.Output = null;
-
+
// Call
loc.NotifyObservers();
});
-
+
// Assert
Assert.AreEqual(2, rows.Count);
Assert.AreEqual("-", firstRow.Cells[waterLevelColumnIndex].FormattedValue);
@@ -315,30 +322,111 @@
Assert.AreEqual("-", secondRow.Cells[wavePeriodColumnIndex].FormattedValue);
}
+ [Test]
+ public void CalculateForSelectedButton_OneSelected_CallsCalculateSelectionNotChanged()
+ {
+ // Setup
+ DuneLocationsView view = ShowFullyConfiguredDuneLocationsView();
+ ObservableList locations = (ObservableList) view.Data;
+ var dataGridView = (DataGridView) new ControlTester("dataGridView").TheObject;
+ var dataGridViewSource = dataGridView.DataSource;
+ var rows = dataGridView.Rows;
+ rows[0].Cells[locationCalculateColumnIndex].Value = true;
+
+ var mocks = new MockRepository();
+ var observer = mocks.StrictMock();
+ observer.Expect(o => o.UpdateObserver());
+ var assessmentSection = mocks.Stub();
+ assessmentSection.Stub(a => a.Id).Return("1");
+ assessmentSection.Stub(ass => ass.FailureMechanismContribution)
+ .Return(new FailureMechanismContribution(Enumerable.Empty(), 1, 1));
+ assessmentSection.HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase
+ {
+ FilePath = Path.Combine(testDataPath, "complete.sqlite")
+ };
+ mocks.ReplayAll();
+
+ locations.Attach(observer);
+
+ view.AssessmentSection = assessmentSection;
+ view.FailureMechanism = new DuneErosionFailureMechanism
+ {
+ Contribution = 10
+ };
+ var buttonTester = new ButtonTester("CalculateForSelectedButton", testForm);
+
+ using (var viewParent = new Form())
+ using (new HydraRingCalculatorFactoryConfig())
+ {
+ view.CalculationGuiService = new DuneLocationCalculationGuiService(viewParent);
+
+ // Call
+ TestHelper.AssertLogMessages(() => buttonTester.Click(),
+ messages =>
+ {
+ var messageList = messages.ToList();
+
+ // Assert
+ Assert.AreEqual(5, messageList.Count);
+ StringAssert.StartsWith("Berekening van '1' gestart om: ", messageList[0]);
+ Assert.AreEqual("Duinafslag berekening voor locatie '1' is niet geconvergeerd.", messageList[1]);
+ StringAssert.StartsWith("Duinafslag berekening is uitgevoerd op de tijdelijke locatie", messageList[2]);
+ StringAssert.StartsWith("Berekening van '1' beëindigd om: ", messageList[3]);
+ Assert.AreEqual("Uitvoeren van '1' is gelukt.", messageList[4]);
+ });
+ }
+
+ // Assert
+ Assert.AreSame(dataGridViewSource, dataGridView.DataSource);
+ Assert.IsTrue((bool) rows[0].Cells[locationCalculateColumnIndex].Value);
+ Assert.IsFalse((bool) rows[1].Cells[locationCalculateColumnIndex].Value);
+
+ mocks.VerifyAll();
+ }
+
+ [Test]
+ public void CalculateForSelectedButton_OneSelectedButCalculationGuiServiceNotSet_DoesNotThrowException()
+ {
+ // Setup
+ ShowFullyConfiguredDuneLocationsView();
+
+ var dataGridView = (DataGridView)new ControlTester("dataGridView").TheObject;
+ var rows = dataGridView.Rows;
+ rows[0].Cells[locationCalculateColumnIndex].Value = true;
+
+ var button = new ButtonTester("CalculateForSelectedButton", testForm);
+
+ // Call
+ TestDelegate test = () => button.Click();
+
+ // Assert
+ Assert.DoesNotThrow(test);
+ }
+
private DuneLocationsView ShowFullyConfiguredDuneLocationsView()
{
var view = ShowDuneLocationsView();
view.Data = new ObservableList
{
new DuneLocation(1, "1", new Point2D(1.0, 1.0), new DuneLocation.ConstructionProperties
- {
- CoastalAreaId = 50,
- Offset = 320,
- D50 = 0.000837
- }),
+ {
+ CoastalAreaId = 50,
+ Offset = 320,
+ D50 = 0.000837
+ }),
new DuneLocation(2, "2", new Point2D(2.0, 2.0), new DuneLocation.ConstructionProperties
+ {
+ CoastalAreaId = 60,
+ Offset = 230,
+ D50 = 0.000123
+ })
{
- CoastalAreaId = 60,
- Offset = 230,
- D50 = 0.000123
- })
- {
Output = new DuneLocationOutput(CalculationConvergence.CalculatedConverged, new DuneLocationOutput.ConstructionProperties
- {
- WaterLevel = 1.23,
- WaveHeight = 2.34,
- WavePeriod = 3.45
- })
+ {
+ WaterLevel = 1.23,
+ WaveHeight = 2.34,
+ WavePeriod = 3.45
+ })
}
};
Index: Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Plugin.Test/ViewInfos/DuneErosionLocationsViewInfoTest.cs
===================================================================
diff -u -rc9bd6bb2616d76ccae091516fbd2f5b575aafdfa -r90fb0bee68ae22094e4ef328dc563985f63365fe
--- Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Plugin.Test/ViewInfos/DuneErosionLocationsViewInfoTest.cs (.../DuneErosionLocationsViewInfoTest.cs) (revision c9bd6bb2616d76ccae091516fbd2f5b575aafdfa)
+++ Ringtoets/DuneErosion/test/Ringtoets.DuneErosion.Plugin.Test/ViewInfos/DuneErosionLocationsViewInfoTest.cs (.../DuneErosionLocationsViewInfoTest.cs) (revision 90fb0bee68ae22094e4ef328dc563985f63365fe)
@@ -31,6 +31,7 @@
using Ringtoets.Common.Data.AssessmentSection;
using Ringtoets.DuneErosion.Data;
using Ringtoets.DuneErosion.Data.TestUtil;
+using Ringtoets.DuneErosion.Forms.GuiServices;
using Ringtoets.DuneErosion.Forms.PresentationObjects;
using Ringtoets.DuneErosion.Forms.Views;
using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources;
@@ -187,6 +188,8 @@
// Assert
Assert.AreSame(assessmentSectionStub, view.AssessmentSection);
+ Assert.AreSame(failureMechanism, view.FailureMechanism);
+ Assert.IsInstanceOf(view.CalculationGuiService);
}
mocks.VerifyAll();
}