Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Ringtoets.Integration.Forms.Test.csproj
===================================================================
diff -u -rc399d2d0b6ce75c643c256bf605b748fc1dea88b -rfe0ccc4dc7ed40356bd77aae1531d073af8d8f85
--- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Ringtoets.Integration.Forms.Test.csproj (.../Ringtoets.Integration.Forms.Test.csproj) (revision c399d2d0b6ce75c643c256bf605b748fc1dea88b)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Ringtoets.Integration.Forms.Test.csproj (.../Ringtoets.Integration.Forms.Test.csproj) (revision fe0ccc4dc7ed40356bd77aae1531d073af8d8f85)
@@ -190,6 +190,10 @@
{318ba582-88c9-4816-a54a-a7e431461de3}
Core.Components.Gis
+
+ {73E7E100-C015-4874-A548-AD6E33E7955E}
+ Ringtoets.Common.Service.TestUtil
+
{74CBA865-9338-447F-BAD9-28312446AE84}
Ringtoets.HydraRing.Calculation.TestUtil
@@ -202,10 +206,6 @@
{1AC97B51-88C2-437D-89E6-65C69AB3CCAD}
Ringtoets.WaveImpactAsphaltCover.Forms
-
- {83A782F1-BA78-4D5C-B213-39066605AFD8}
- Ringtoets.WaveImpactAsphaltCover.Plugin
-
{d4200f43-3f72-4f42-af0a-8ced416a38ec}
Ringtoets.Common.Data
@@ -290,6 +290,10 @@
{C8383B76-B3F1-4E6E-B56C-527B469FA20A}
Ringtoets.Integration.Plugin
+
+ {28811C4A-6C18-42C1-88B2-A03A3784E2D0}
+ Ringtoets.Integration.Service
+
Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/TreeNodeInfos/DesignWaterLevelLocationsContextTreeNodeInfoTest.cs
===================================================================
diff -u -rc399d2d0b6ce75c643c256bf605b748fc1dea88b -rfe0ccc4dc7ed40356bd77aae1531d073af8d8f85
--- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/TreeNodeInfos/DesignWaterLevelLocationsContextTreeNodeInfoTest.cs (.../DesignWaterLevelLocationsContextTreeNodeInfoTest.cs) (revision c399d2d0b6ce75c643c256bf605b748fc1dea88b)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/TreeNodeInfos/DesignWaterLevelLocationsContextTreeNodeInfoTest.cs (.../DesignWaterLevelLocationsContextTreeNodeInfoTest.cs) (revision fe0ccc4dc7ed40356bd77aae1531d073af8d8f85)
@@ -37,11 +37,13 @@
using Rhino.Mocks;
using Ringtoets.Common.Data.AssessmentSection;
using Ringtoets.Common.Data.TestUtil;
-using Ringtoets.HydraRing.Calculation.TestUtil;
+using Ringtoets.Common.Service;
+using Ringtoets.Common.Service.TestUtil;
using Ringtoets.HydraRing.Data;
using Ringtoets.Integration.Data;
using Ringtoets.Integration.Forms.PresentationObjects;
using Ringtoets.Integration.Plugin;
+using Ringtoets.Integration.Service.MessageProviders;
using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources;
namespace Ringtoets.Integration.Forms.Test.TreeNodeInfos
@@ -300,51 +302,6 @@
}
[Test]
- public void ForeColor_ContextHasNoHydraulicBoundaryDatabase_ReturnDisabledColor()
- {
- // Setup
- var assessmentSectionMock = mockRepository.Stub();
- mockRepository.ReplayAll();
-
- var context = new DesignWaterLevelLocationsContext(assessmentSectionMock);
-
- using (var plugin = new RingtoetsPlugin())
- {
- TreeNodeInfo info = GetInfo(plugin);
-
- // Call
- Color color = info.ForeColor(context);
-
- // Assert
- Assert.AreEqual(Color.FromKnownColor(KnownColor.GrayText), color);
- }
- mockRepository.VerifyAll();
- }
-
- [Test]
- public void ForeColor_ContextHasHydraulicBoundaryDatabase_ReturnControlColor()
- {
- // Setup
- var assessmentSectionMock = mockRepository.Stub();
- assessmentSectionMock.HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase();
- mockRepository.ReplayAll();
-
- var context = new DesignWaterLevelLocationsContext(assessmentSectionMock);
-
- using (var plugin = new RingtoetsPlugin())
- {
- TreeNodeInfo info = GetInfo(plugin);
-
- // Call
- Color color = info.ForeColor(context);
-
- // Assert
- Assert.AreEqual(Color.FromKnownColor(KnownColor.ControlText), color);
- }
- mockRepository.VerifyAll();
- }
-
- [Test]
[RequiresSTA]
public void GivenHydraulicBoundaryLocationThatFails_CalculatingAssessmentLevelFromContextMenu_ThenLogMessagesAddedPreviousOutputNotAffected()
{
@@ -386,30 +343,70 @@
plugin.Activate();
using (ContextMenuStrip contextMenuAdapter = info.ContextMenuStrip(context, null, treeViewControl))
- using (new HydraRingCalculationServiceConfig())
{
- // When
- Action action = () => { contextMenuAdapter.Items[contextMenuRunAssessmentLevelCalculationsIndex].PerformClick(); };
-
- // Then
- TestHelper.AssertLogMessages(action, messages =>
+ using (new DesignWaterLevelCalculationServiceConfig())
{
- var msgs = messages.ToArray();
- Assert.AreEqual(6, msgs.Length);
- StringAssert.StartsWith(string.Format("Validatie van 'Toetspeil berekenen voor locatie '{0}'' gestart om:", locationName), msgs[0]);
- StringAssert.StartsWith(string.Format("Validatie van 'Toetspeil berekenen voor locatie '{0}'' beƫindigd om:", locationName), msgs[1]);
- StringAssert.StartsWith(string.Format("Berekening van 'Toetspeil berekenen voor locatie '{0}'' gestart om:", locationName), msgs[2]);
- StringAssert.StartsWith(string.Format("Er is een fout opgetreden tijdens de toetspeil berekening '{0}': inspecteer het logbestand.", locationName), msgs[3]);
- StringAssert.StartsWith(string.Format("Berekening van 'Toetspeil berekenen voor locatie '{0}'' beƫindigd om:", locationName), msgs[4]);
- StringAssert.StartsWith(string.Format("Uitvoeren van 'Toetspeil berekenen voor locatie '{0}'' is mislukt.", locationName), msgs[5]);
- });
- Assert.AreEqual(CalculationConvergence.NotCalculated, location.DesignWaterLevelCalculationConvergence);
+ var testService = (TestDesignWaterLevelCalculationService) DesignWaterLevelCalculationService.Instance;
+ testService.SetCalculationConvergenceOutput = CalculationConvergence.NotCalculated;
+
+ // When
+ contextMenuAdapter.Items[contextMenuRunAssessmentLevelCalculationsIndex].PerformClick();
+
+ // Then
+ Assert.IsInstanceOf(testService.MessageProvider);
+ Assert.AreEqual(CalculationConvergence.NotCalculated, location.DesignWaterLevelCalculationConvergence);
+ }
}
}
}
mockRepository.VerifyAll();
}
+ [Test]
+ public void ForeColor_ContextHasNoHydraulicBoundaryDatabase_ReturnDisabledColor()
+ {
+ // Setup
+ var assessmentSectionMock = mockRepository.Stub();
+ mockRepository.ReplayAll();
+
+ var context = new DesignWaterLevelLocationsContext(assessmentSectionMock);
+
+ using (var plugin = new RingtoetsPlugin())
+ {
+ TreeNodeInfo info = GetInfo(plugin);
+
+ // Call
+ Color color = info.ForeColor(context);
+
+ // Assert
+ Assert.AreEqual(Color.FromKnownColor(KnownColor.GrayText), color);
+ }
+ mockRepository.VerifyAll();
+ }
+
+ [Test]
+ public void ForeColor_ContextHasHydraulicBoundaryDatabase_ReturnControlColor()
+ {
+ // Setup
+ var assessmentSectionMock = mockRepository.Stub();
+ assessmentSectionMock.HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase();
+ mockRepository.ReplayAll();
+
+ var context = new DesignWaterLevelLocationsContext(assessmentSectionMock);
+
+ using (var plugin = new RingtoetsPlugin())
+ {
+ TreeNodeInfo info = GetInfo(plugin);
+
+ // Call
+ Color color = info.ForeColor(context);
+
+ // Assert
+ Assert.AreEqual(Color.FromKnownColor(KnownColor.ControlText), color);
+ }
+ mockRepository.VerifyAll();
+ }
+
private static TreeNodeInfo GetInfo(RingtoetsPlugin plugin)
{
return plugin.GetTreeNodeInfos().First(tni => tni.TagType == typeof(DesignWaterLevelLocationsContext));
Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Views/DesignWaterLevelLocationsViewTest.cs
===================================================================
diff -u -r06b2840a2bb64c0960c8ac29322b5a0971c73c77 -rfe0ccc4dc7ed40356bd77aae1531d073af8d8f85
--- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Views/DesignWaterLevelLocationsViewTest.cs (.../DesignWaterLevelLocationsViewTest.cs) (revision 06b2840a2bb64c0960c8ac29322b5a0971c73c77)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Views/DesignWaterLevelLocationsViewTest.cs (.../DesignWaterLevelLocationsViewTest.cs) (revision fe0ccc4dc7ed40356bd77aae1531d073af8d8f85)
@@ -33,8 +33,10 @@
using Ringtoets.Common.Data.Contribution;
using Ringtoets.Common.Data.FailureMechanism;
using Ringtoets.Common.Forms.GuiServices;
+using Ringtoets.Common.Service.MessageProviders;
using Ringtoets.HydraRing.Data;
using Ringtoets.Integration.Forms.Views;
+using Ringtoets.Integration.Service.MessageProviders;
namespace Ringtoets.Integration.Forms.Test.Views
{
@@ -215,9 +217,14 @@
var mockRepository = new MockRepository();
var guiServiceMock = mockRepository.StrictMock();
+ ICalculationMessageProvider messageProvider = null;
IEnumerable locations = null;
guiServiceMock.Expect(ch => ch.CalculateDesignWaterLevels(null, null, null, null, null, 1)).IgnoreArguments().WhenCalled(
- invocation => { locations = (IEnumerable) invocation.Arguments[3]; });
+ invocation =>
+ {
+ messageProvider = (ICalculationMessageProvider) invocation.Arguments[0];
+ locations = (IEnumerable) invocation.Arguments[3];
+ });
mockRepository.ReplayAll();
view.CalculationGuiService = guiServiceMock;
@@ -227,10 +234,12 @@
buttonTester.Click();
// Assert
+ Assert.IsInstanceOf(messageProvider);
var hydraulicBoundaryLocations = locations.ToArray();
Assert.AreEqual(1, hydraulicBoundaryLocations.Length);
HydraulicBoundaryLocation expectedLocation = assessmentSection.HydraulicBoundaryDatabase.Locations.First();
Assert.AreEqual(expectedLocation, hydraulicBoundaryLocations.First());
+
mockRepository.VerifyAll();
}