Index: Ringtoets/Common/src/Ringtoets.Common.Forms/GuiServices/HydraulicBoundaryLocationCalculationGuiService.cs
===================================================================
diff -u -ree6a3b6a2c63799f459b0735f660de5703abdc3b -r1d54902642a3e1bf3b173afa85cebfa52afb0c15
--- Ringtoets/Common/src/Ringtoets.Common.Forms/GuiServices/HydraulicBoundaryLocationCalculationGuiService.cs (.../HydraulicBoundaryLocationCalculationGuiService.cs) (revision ee6a3b6a2c63799f459b0735f660de5703abdc3b)
+++ Ringtoets/Common/src/Ringtoets.Common.Forms/GuiServices/HydraulicBoundaryLocationCalculationGuiService.cs (.../HydraulicBoundaryLocationCalculationGuiService.cs) (revision 1d54902642a3e1bf3b173afa85cebfa52afb0c15)
@@ -114,7 +114,8 @@
RunActivities(hydraulicBoundaryDatabaseFilePath,
preprocessorDirectory,
- locations.Select(location => new WaveHeightCalculationActivity(new HydraulicBoundaryCalculationWrapper(location, getCalculationFunc(location)),
+ locations.Select(location => new WaveHeightCalculationActivity(location,
+ getCalculationFunc(location),
hydraulicBoundaryDatabaseFilePath,
preprocessorDirectory,
norm,
Index: Ringtoets/Common/src/Ringtoets.Common.Service/WaveHeightCalculationActivity.cs
===================================================================
diff -u -rfc4f536da3543bb4d5367d240ed1aef5aa7655da -r1d54902642a3e1bf3b173afa85cebfa52afb0c15
--- Ringtoets/Common/src/Ringtoets.Common.Service/WaveHeightCalculationActivity.cs (.../WaveHeightCalculationActivity.cs) (revision fc4f536da3543bb4d5367d240ed1aef5aa7655da)
+++ Ringtoets/Common/src/Ringtoets.Common.Service/WaveHeightCalculationActivity.cs (.../WaveHeightCalculationActivity.cs) (revision 1d54902642a3e1bf3b173afa85cebfa52afb0c15)
@@ -37,49 +37,58 @@
private readonly string preprocessorDirectory;
private readonly ICalculationMessageProvider messageProvider;
private readonly WaveHeightCalculationService calculationService;
- private readonly HydraulicBoundaryCalculationWrapper calculationWrapper;
+ private readonly HydraulicBoundaryLocation hydraulicBoundaryLocation;
+ private readonly HydraulicBoundaryLocationCalculation hydraulicBoundaryLocationCalculation;
///
/// Creates a new instance of .
///
- /// The to perform the calculation for.
+ /// The hydraulic boundary location the belongs to.
+ /// The hydraulic boundary location calculation to perform.
/// The hydraulic boundary database file that should be used for performing the calculation.
/// The preprocessor directory.
/// The norm to use during the calculation.
/// The provider of the messages to use during the calculation.
/// Preprocessing is disabled when equals .
- /// Thrown when or
- /// is null.
- public WaveHeightCalculationActivity(HydraulicBoundaryCalculationWrapper calculationWrapper,
+ /// Thrown when ,
+ /// or is null.
+ public WaveHeightCalculationActivity(HydraulicBoundaryLocation hydraulicBoundaryLocation,
+ HydraulicBoundaryLocationCalculation hydraulicBoundaryLocationCalculation,
string hydraulicBoundaryDatabaseFilePath,
string preprocessorDirectory,
double norm,
ICalculationMessageProvider messageProvider)
{
- if (calculationWrapper == null)
+ if (hydraulicBoundaryLocation == null)
{
- throw new ArgumentNullException(nameof(calculationWrapper));
+ throw new ArgumentNullException(nameof(hydraulicBoundaryLocation));
}
+ if (hydraulicBoundaryLocationCalculation == null)
+ {
+ throw new ArgumentNullException(nameof(hydraulicBoundaryLocationCalculation));
+ }
+
if (messageProvider == null)
{
throw new ArgumentNullException(nameof(messageProvider));
}
- this.calculationWrapper = calculationWrapper;
+ this.hydraulicBoundaryLocation = hydraulicBoundaryLocation;
+ this.hydraulicBoundaryLocationCalculation = hydraulicBoundaryLocationCalculation;
this.messageProvider = messageProvider;
this.hydraulicBoundaryDatabaseFilePath = hydraulicBoundaryDatabaseFilePath;
this.preprocessorDirectory = preprocessorDirectory;
this.norm = norm;
- Description = messageProvider.GetActivityDescription(calculationWrapper.Name);
+ Description = messageProvider.GetActivityDescription(hydraulicBoundaryLocation.Name);
calculationService = new WaveHeightCalculationService();
}
protected override bool Validate()
{
- if (AlreadyCalculated)
+ if (hydraulicBoundaryLocationCalculation.IsCalculated())
{
State = ActivityState.Skipped;
return true;
@@ -92,7 +101,8 @@
{
if (State != ActivityState.Skipped)
{
- calculationService.Calculate(calculationWrapper,
+ calculationService.Calculate(hydraulicBoundaryLocation,
+ hydraulicBoundaryLocationCalculation,
hydraulicBoundaryDatabaseFilePath,
preprocessorDirectory,
norm,
@@ -107,15 +117,7 @@
protected override void OnFinish()
{
- calculationWrapper.ObservableObject.NotifyObservers();
+ hydraulicBoundaryLocation.NotifyObservers();
}
-
- private bool AlreadyCalculated
- {
- get
- {
- return calculationWrapper.IsCalculated();
- }
- }
}
}
\ No newline at end of file
Index: Ringtoets/Common/test/Ringtoets.Common.Service.Test/WaveHeightCalculationActivityTest.cs
===================================================================
diff -u -r1e374c6bbc16754d126342f1f5b6e3e92721707a -r1d54902642a3e1bf3b173afa85cebfa52afb0c15
--- Ringtoets/Common/test/Ringtoets.Common.Service.Test/WaveHeightCalculationActivityTest.cs (.../WaveHeightCalculationActivityTest.cs) (revision 1e374c6bbc16754d126342f1f5b6e3e92721707a)
+++ Ringtoets/Common/test/Ringtoets.Common.Service.Test/WaveHeightCalculationActivityTest.cs (.../WaveHeightCalculationActivityTest.cs) (revision 1d54902642a3e1bf3b173afa85cebfa52afb0c15)
@@ -78,15 +78,17 @@
const string locationName = "locationName";
const string activityDescription = "activityDescription";
- var calculation = new HydraulicBoundaryLocationCalculation();
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(new TestHydraulicBoundaryLocation(locationName), calculation);
-
var calculationMessageProvider = mockRepository.Stub();
calculationMessageProvider.Stub(calc => calc.GetActivityDescription(locationName)).Return(activityDescription);
mockRepository.ReplayAll();
// Call
- var activity = new WaveHeightCalculationActivity(calculationWrapper, validFilePath, validPreprocessorDirectory, 1, calculationMessageProvider);
+ var activity = new WaveHeightCalculationActivity(new TestHydraulicBoundaryLocation(locationName),
+ new HydraulicBoundaryLocationCalculation(),
+ validFilePath,
+ validPreprocessorDirectory,
+ 1,
+ calculationMessageProvider);
// Assert
Assert.IsInstanceOf(activity);
@@ -99,30 +101,58 @@
[Test]
public void ParameteredConstructor_CalculationServiceMessageProviderNull_ThrowsArgumentNullException()
{
+ // Call
+ TestDelegate call = () => new WaveHeightCalculationActivity(new TestHydraulicBoundaryLocation(),
+ new HydraulicBoundaryLocationCalculation(),
+ validFilePath,
+ validPreprocessorDirectory,
+ 1,
+ null);
+
+ // Assert
+ var exception = Assert.Throws(call);
+ Assert.AreEqual("messageProvider", exception.ParamName);
+ }
+
+ [Test]
+ public void ParameteredConstructor_HydraulicBoundaryLocationNull_ThrowsArgumentNullException()
+ {
// Setup
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(new TestHydraulicBoundaryLocation(), new HydraulicBoundaryLocationCalculation());
+ var calculationMessageProvider = mockRepository.StrictMock();
+ mockRepository.ReplayAll();
// Call
- TestDelegate call = () => new WaveHeightCalculationActivity(calculationWrapper, validFilePath, validPreprocessorDirectory, 1, null);
+ TestDelegate call = () => new WaveHeightCalculationActivity(null,
+ new HydraulicBoundaryLocationCalculation(),
+ validFilePath,
+ validPreprocessorDirectory,
+ 1,
+ calculationMessageProvider);
// Assert
var exception = Assert.Throws(call);
- Assert.AreEqual("messageProvider", exception.ParamName);
+ Assert.AreEqual("hydraulicBoundaryLocation", exception.ParamName);
+ mockRepository.VerifyAll();
}
[Test]
- public void ParameteredConstructor_CalculationWrapperNull_ThrowsArgumentNullException()
+ public void ParameteredConstructor_HydraulicBoundaryLocationCalculationNull_ThrowsArgumentNullException()
{
// Setup
var calculationMessageProvider = mockRepository.StrictMock();
mockRepository.ReplayAll();
// Call
- TestDelegate call = () => new WaveHeightCalculationActivity(null, validFilePath, validPreprocessorDirectory, 1, calculationMessageProvider);
+ TestDelegate call = () => new WaveHeightCalculationActivity(new TestHydraulicBoundaryLocation(),
+ null,
+ validFilePath,
+ validPreprocessorDirectory,
+ 1,
+ calculationMessageProvider);
// Assert
var exception = Assert.Throws(call);
- Assert.AreEqual("calculationWrapper", exception.ParamName);
+ Assert.AreEqual("hydraulicBoundaryLocationCalculation", exception.ParamName);
mockRepository.VerifyAll();
}
@@ -134,13 +164,16 @@
const string locationName = "testLocation";
const string activityDescription = "activityDescription";
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(new TestHydraulicBoundaryLocation(locationName), new HydraulicBoundaryLocationCalculation());
-
var calculationMessageProvider = mockRepository.StrictMock();
calculationMessageProvider.Stub(calc => calc.GetActivityDescription(locationName)).Return(activityDescription);
mockRepository.ReplayAll();
- var activity = new WaveHeightCalculationActivity(calculationWrapper, invalidFilePath, validPreprocessorDirectory, 1, calculationMessageProvider);
+ var activity = new WaveHeightCalculationActivity(new TestHydraulicBoundaryLocation(locationName),
+ new HydraulicBoundaryLocationCalculation(),
+ invalidFilePath,
+ validPreprocessorDirectory,
+ 1,
+ calculationMessageProvider);
// Call
Action call = () => activity.Run();
@@ -166,13 +199,12 @@
const string locationName = "testLocation";
const string activityDescription = "activityDescription";
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(new TestHydraulicBoundaryLocation(locationName), new HydraulicBoundaryLocationCalculation());
-
var calculationMessageProvider = mockRepository.StrictMock();
calculationMessageProvider.Expect(calc => calc.GetActivityDescription(locationName)).Return(activityDescription);
mockRepository.ReplayAll();
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(new TestHydraulicBoundaryLocation(locationName),
+ new HydraulicBoundaryLocationCalculation(),
validFilePath,
invalidPreprocessorDirectory,
1,
@@ -203,7 +235,6 @@
const string activityDescription = "activityDescription";
const double norm = 1.0 / 30;
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(new TestHydraulicBoundaryLocation(locationName), new HydraulicBoundaryLocationCalculation());
var calculator = new TestWaveHeightCalculator
{
Converged = true
@@ -215,7 +246,8 @@
calculationMessageProvider.Stub(calc => calc.GetActivityDescription(locationName)).Return(activityDescription);
mockRepository.ReplayAll();
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(new TestHydraulicBoundaryLocation(locationName),
+ new HydraulicBoundaryLocationCalculation(),
validFilePath,
validPreprocessorDirectory,
norm,
@@ -240,7 +272,7 @@
});
WaveHeightCalculationInput waveHeightCalculationInput = calculator.ReceivedInputs.Single();
- Assert.AreEqual(calculationWrapper.Id, waveHeightCalculationInput.HydraulicBoundaryLocationId);
+ Assert.AreEqual(new HydraulicBoundaryCalculationWrapper(new TestHydraulicBoundaryLocation(locationName), new HydraulicBoundaryLocationCalculation()).Id, waveHeightCalculationInput.HydraulicBoundaryLocationId);
Assert.AreEqual(StatisticsConverter.ProbabilityToReliability(norm), waveHeightCalculationInput.Beta);
}
@@ -269,9 +301,8 @@
Output = new TestHydraulicBoundaryLocationOutput(3.0, CalculationConvergence.CalculatedConverged)
};
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(hydraulicBoundaryLocation, hydraulicBoundaryLocationCalculation);
-
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(hydraulicBoundaryLocation,
+ hydraulicBoundaryLocationCalculation,
validFilePath,
validPreprocessorDirectory,
norm,
@@ -313,9 +344,8 @@
calculationMessageProvider.Stub(calc => calc.GetActivityDescription(locationName)).Return(string.Empty);
mockRepository.ReplayAll();
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(hydraulicBoundaryLocation, hydraulicBoundaryLocationCalculation);
-
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(hydraulicBoundaryLocation,
+ hydraulicBoundaryLocationCalculation,
validFilePath,
validPreprocessorDirectory,
norm,
@@ -382,9 +412,8 @@
Output = output
};
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(hydraulicBoundaryLocation, hydraulicBoundaryLocationCalculation);
-
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(hydraulicBoundaryLocation,
+ hydraulicBoundaryLocationCalculation,
validFilePath,
validPreprocessorDirectory,
30,
@@ -434,10 +463,9 @@
Output = new TestHydraulicBoundaryLocationOutput(double.NaN, CalculationConvergence.CalculatedConverged)
};
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(hydraulicBoundaryLocation, hydraulicBoundaryLocationCalculation);
-
const double norm = 1.0 / 300;
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(hydraulicBoundaryLocation,
+ hydraulicBoundaryLocationCalculation,
validFilePath,
validPreprocessorDirectory,
norm,
@@ -494,10 +522,9 @@
calculationMessageProvider.Stub(calc => calc.GetCalculatedNotConvergedMessage(locationName)).Return(string.Empty);
mockRepository.ReplayAll();
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(hydraulicBoundaryLocation, new HydraulicBoundaryLocationCalculation());
-
const double norm = 1.0 / 30;
- var activity = new WaveHeightCalculationActivity(calculationWrapper,
+ var activity = new WaveHeightCalculationActivity(hydraulicBoundaryLocation,
+ new HydraulicBoundaryLocationCalculation(),
validFilePath,
validPreprocessorDirectory,
norm,
@@ -524,15 +551,15 @@
{
// Setup
var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation();
- var calculationWrapper = new HydraulicBoundaryCalculationWrapper(hydraulicBoundaryLocation, new HydraulicBoundaryLocationCalculation());
var calculationMessageProvider = mockRepository.Stub();
var observer = mockRepository.StrictMock();
observer.Expect(o => o.UpdateObserver());
hydraulicBoundaryLocation.Attach(observer);
mockRepository.ReplayAll();
- var activity = new TestWaveHeightCalculationActivity(calculationWrapper,
+ var activity = new TestWaveHeightCalculationActivity(hydraulicBoundaryLocation,
+ new HydraulicBoundaryLocationCalculation(),
validFilePath,
validPreprocessorDirectory,
1.0,
@@ -548,13 +575,15 @@
private class TestWaveHeightCalculationActivity : WaveHeightCalculationActivity
{
- public TestWaveHeightCalculationActivity(HydraulicBoundaryCalculationWrapper calculationWrapper,
+ public TestWaveHeightCalculationActivity(HydraulicBoundaryLocation hydraulicBoundaryLocation,
+ HydraulicBoundaryLocationCalculation hydraulicBoundaryLocationCalculation,
string hydraulicBoundaryDatabaseFilePath,
string preprocessorDirectory,
double norm,
ICalculationMessageProvider messageProvider,
ActivityState state)
- : base(calculationWrapper,
+ : base(hydraulicBoundaryLocation,
+ hydraulicBoundaryLocationCalculation,
hydraulicBoundaryDatabaseFilePath,
preprocessorDirectory,
norm,