Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingFailureMechanismNodePresenter.cs
===================================================================
diff -u -re5a53456f16d530cb56abb35a256d8cf1f91df3d -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingFailureMechanismNodePresenter.cs (.../PipingFailureMechanismNodePresenter.cs) (revision e5a53456f16d530cb56abb35a256d8cf1f91df3d)
+++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingFailureMechanismNodePresenter.cs (.../PipingFailureMechanismNodePresenter.cs) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -3,6 +3,7 @@
using System.ComponentModel;
using System.Windows.Forms;
using DelftTools.Controls;
+using DelftTools.Shell.Core.Workflow;
using DelftTools.Utils.Collections;
using Ringtoets.Piping.Data;
@@ -26,6 +27,11 @@
}
}
+ ///
+ /// Injection points for a method to cause an to be scheduled for execution.
+ ///
+ public Action RunActivityAction { private get; set; }
+
public void UpdateNode(ITreeNode parentNode, ITreeNode node, object nodeData)
{
node.Text = Resources.PipingFailureMechanismDisplayName;
@@ -89,7 +95,8 @@
{
var rootMenu = new ContextMenuStrip();
- rootMenu.AddMenuItem("Berekening toevoegen", "Voeg een nieuwe piping berekening toe aan het faalmechanisme.",
+ rootMenu.AddMenuItem(Resources.PipingFailureMechanism_Add_piping_calculation,
+ Resources.PipingFailureMechanism_Add_piping_calculation_Tooltip,
Resources.PipingIcon, (o, args) =>
{
var failureMechanism = (PipingFailureMechanism)nodeData;
@@ -100,12 +107,15 @@
failureMechanism.Calculations.Add(pipingData);
failureMechanism.NotifyObservers();
});
- rootMenu.AddMenuItem("Berekenen", "Valideer en vervolgens reken all piping berekeningen door in het faalmechanisme.",
+ rootMenu.AddMenuItem(Resources.Calculate,
+ Resources.PipingFailureMechanism_Calculate_Tooltip,
Resources.PlayAll, (o, args) =>
{
var failureMechanism = (PipingFailureMechanism)nodeData;
- PipingCalculationService.PerfromValidatedCalculation(failureMechanism);
- failureMechanism.NotifyObservers();
+ foreach (var calc in failureMechanism.Calculations)
+ {
+ RunActivityAction(new PipingCalculationActivity(calc));
+ }
});
return rootMenu;
Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs
===================================================================
diff -u -rac57fa1a2d441543bb026e785f1483586079cc7d -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision ac57fa1a2d441543bb026e785f1483586079cc7d)
+++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:4.0.30319.34209
+// Runtime Version:4.0.30319.18444
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -70,6 +70,15 @@
}
///
+ /// Looks up a localized string similar to Berekenen.
+ ///
+ public static string Calculate {
+ get {
+ return ResourceManager.GetString("Calculate", resourceCulture);
+ }
+ }
+
+ ///
/// Looks up a localized string similar to Algemeen.
///
public static string Categories_General {
@@ -495,7 +504,7 @@
}
///
- /// Looks up a localized string similar to Drawsdoorsnede.
+ /// Looks up a localized string similar to Dwarsdoorsnede.
///
public static string PipingDataSurfaceLineDisplayName {
get {
@@ -612,6 +621,33 @@
}
///
+ /// Looks up a localized string similar to Berekening toevoegen.
+ ///
+ public static string PipingFailureMechanism_Add_piping_calculation {
+ get {
+ return ResourceManager.GetString("PipingFailureMechanism_Add_piping_calculation", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Voeg een nieuwe piping berekening toe aan het faalmechanisme..
+ ///
+ public static string PipingFailureMechanism_Add_piping_calculation_Tooltip {
+ get {
+ return ResourceManager.GetString("PipingFailureMechanism_Add_piping_calculation_Tooltip", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Valideer en vervolgens reken all piping berekeningen door in het faalmechanisme..
+ ///
+ public static string PipingFailureMechanism_Calculate_Tooltip {
+ get {
+ return ResourceManager.GetString("PipingFailureMechanism_Calculate_Tooltip", resourceCulture);
+ }
+ }
+
+ ///
/// Looks up a localized string similar to Faalmechanisme piping.
///
public static string PipingFailureMechanismDisplayName {
Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx
===================================================================
diff -u -rac57fa1a2d441543bb026e785f1483586079cc7d -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision ac57fa1a2d441543bb026e785f1483586079cc7d)
+++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -380,7 +380,7 @@
De dwarsdoorsnede die voor de piping berekening gebruikt wordt.
- Drawsdoorsnede
+ Dwarsdoorsnede
..\Resources\PlayAll.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -418,4 +418,16 @@
Ondergrondprofiel
+
+ Berekening toevoegen
+
+
+ Voeg een nieuwe piping berekening toe aan het faalmechanisme.
+
+
+ Berekenen
+
+
+ Valideer en vervolgens reken all piping berekeningen door in het faalmechanisme.
+
\ No newline at end of file
Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Plugin/WtiGuiPlugin.cs
===================================================================
diff -u -r7b2fb7be49ba189d624e933485f14a7b94039bbb -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Plugin/WtiGuiPlugin.cs (.../WtiGuiPlugin.cs) (revision 7b2fb7be49ba189d624e933485f14a7b94039bbb)
+++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Plugin/WtiGuiPlugin.cs (.../WtiGuiPlugin.cs) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -74,7 +74,10 @@
{
RunActivityAction = Gui.Application.ActivityRunner.Enqueue
};
- yield return new PipingFailureMechanismNodePresenter();
+ yield return new PipingFailureMechanismNodePresenter
+ {
+ RunActivityAction = Gui.Application.ActivityRunner.Enqueue
+ };
yield return new PipingSurfaceLineCollectionNodePresenter
{
ImportSurfaceLinesAction = Gui.CommandHandler.ImportToGuiSelection
Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingCalculationService.cs
===================================================================
diff -u -re5a53456f16d530cb56abb35a256d8cf1f91df3d -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingCalculationService.cs (.../PipingCalculationService.cs) (revision e5a53456f16d530cb56abb35a256d8cf1f91df3d)
+++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingCalculationService.cs (.../PipingCalculationService.cs) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -15,62 +15,38 @@
///
public static class PipingCalculationService
{
- private static readonly ILog PipingDataLogger = LogManager.GetLogger(typeof(PipingData));
+ private static readonly ILog pipingDataLogger = LogManager.GetLogger(typeof(PipingData));
///
- /// Performs a piping calculation based on the supplied and sets
- /// to the if the calculation was successful. Error and status information is logged during
- /// the execution of the operation.
- ///
- /// The to base the input for the calculation upon.
- /// If contains validation errors, then is returned.
- /// If problems were encountered during the calculation, is returned.
- /// Otherwise, is returned.
- public static void PerfromValidatedCalculation(PipingData pipingData)
- {
- if (Validate(pipingData))
- {
- ClearOutput(pipingData);
- Calculate(pipingData);
- }
- }
-
- ///
/// Performs validation over the values on the given . Error and status information is logged during
/// the execution of the operation.
///
/// The for which to validate the values.
/// False if contains validation errors; True otherwise.
public static bool Validate(PipingData pipingData)
{
- PipingDataLogger.Info(String.Format(Resources.Validation_Subject_0_Started_Time_1_,
+ pipingDataLogger.Info(String.Format(Resources.Validation_Subject_0_Started_Time_1_,
pipingData.Name, DateTimeService.CurrentTimeAsString));
var validationResults = new PipingCalculation(CreateInputFromData(pipingData)).Validate();
LogMessagesAsError(Resources.ErrorInPipingValidation_0, validationResults.ToArray());
- PipingDataLogger.Info(String.Format(Resources.Validation_Subject_0_Ended_Time_1_,
+ pipingDataLogger.Info(String.Format(Resources.Validation_Subject_0_Ended_Time_1_,
pipingData.Name, DateTimeService.CurrentTimeAsString));
return validationResults.Count == 0;
}
- private static void LogMessagesAsError(string format, params string[] errorMessages)
- {
- foreach (var errorMessage in errorMessages)
- {
- PipingDataLogger.Error(string.Format(format, errorMessage));
- }
- }
-
- private static void ClearOutput(PipingData pipingData)
- {
- pipingData.Output = null;
- }
-
+ ///
+ /// Performs a piping calculation based on the supplied and sets
+ /// to the if the calculation was successful. Error and status information is logged during
+ /// the execution of the operation.
+ ///
+ /// The to base the input for the calculation upon.
+ /// Consider calling first to see if calculation is possible.
public static void Calculate(PipingData pipingData)
{
- PipingDataLogger.Info(String.Format(Resources.Calculation_Subject_0_Started_Time_1_,
+ pipingDataLogger.Info(String.Format(Resources.Calculation_Subject_0_Started_Time_1_,
pipingData.Name, DateTimeService.CurrentTimeAsString));
try
@@ -90,11 +66,19 @@
}
finally
{
- PipingDataLogger.Info(String.Format(Resources.Calculation_Subject_0_Ended_Time_1_,
+ pipingDataLogger.Info(String.Format(Resources.Calculation_Subject_0_Ended_Time_1_,
pipingData.Name, DateTimeService.CurrentTimeAsString));
}
}
+ private static void LogMessagesAsError(string format, params string[] errorMessages)
+ {
+ foreach (var errorMessage in errorMessages)
+ {
+ pipingDataLogger.Error(string.Format(format, errorMessage));
+ }
+ }
+
private static PipingCalculationInput CreateInputFromData(PipingData pipingData)
{
return new PipingCalculationInput(
@@ -124,13 +108,5 @@
pipingData.SoilProfile
);
}
-
- public static void PerfromValidatedCalculation(PipingFailureMechanism failureMechanism)
- {
- foreach (var calculation in failureMechanism.Calculations)
- {
- PerfromValidatedCalculation(calculation);
- }
- }
}
}
\ No newline at end of file
Fisheye: Tag 2f6a4919a4b3a16f09d7da1c09223335eb261692 refers to a dead (removed) revision in file `src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingFailureMechanismCalculationActivity.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/Ringtoets.Piping.Service.csproj
===================================================================
diff -u -r1a305404abc19e3cb419a32ff48b793391722d8b -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/Ringtoets.Piping.Service.csproj (.../Ringtoets.Piping.Service.csproj) (revision 1a305404abc19e3cb419a32ff48b793391722d8b)
+++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Service/Ringtoets.Piping.Service.csproj (.../Ringtoets.Piping.Service.csproj) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -60,7 +60,6 @@
-
True
Index: src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationActivityTest.cs
===================================================================
diff -u -r1a305404abc19e3cb419a32ff48b793391722d8b -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationActivityTest.cs (.../PipingCalculationActivityTest.cs) (revision 1a305404abc19e3cb419a32ff48b793391722d8b)
+++ src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationActivityTest.cs (.../PipingCalculationActivityTest.cs) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -91,6 +91,34 @@
}
[Test]
+ public void Execute_InvalidPipingDataAndInitialized_ErrorLoggedAndOutputNullWithStartAndEnd()
+ {
+ // Setup
+ var validPipingData = PipingDataFactory.CreateCalculationWithValidInput();
+ validPipingData.Diameter70 = 0;
+ validPipingData.DarcyPermeability = 0;
+ validPipingData.Output = new TestPipingOutput();
+
+ var activity = new PipingCalculationActivity(validPipingData);
+ activity.Initialize();
+
+ // Call
+ Action call = () => activity.Execute();
+
+ // Assert
+ TestHelper.AssertLogMessages(call, messages =>
+ {
+ var msgs = messages.ToArray();
+ Assert.AreEqual(3, msgs.Length);
+ StringAssert.StartsWith(String.Format("Berekening van '{0}' gestart om: ", validPipingData.Name), msgs.First());
+ StringAssert.StartsWith("Piping berekening niet gelukt: ", msgs[1]);
+ StringAssert.StartsWith(String.Format("Berekening van '{0}' beëindigd om: ", validPipingData.Name), msgs.Last());
+ });
+ Assert.AreEqual(ActivityStatus.Done, activity.Status);
+ Assert.IsNull(validPipingData.Output);
+ }
+
+ [Test]
public void Execute_ValidPipingDataAndInitialized_PerformPipingCalculationAndLogStartAndEnd()
{
// Setup
Index: src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationServiceTest.cs
===================================================================
diff -u -r7b2fb7be49ba189d624e933485f14a7b94039bbb -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationServiceTest.cs (.../PipingCalculationServiceTest.cs) (revision 7b2fb7be49ba189d624e933485f14a7b94039bbb)
+++ src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationServiceTest.cs (.../PipingCalculationServiceTest.cs) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -36,6 +36,22 @@
}
[Test]
+ public void Validate_InValidPipingDataWithOutput_ReturnsFalseNoOutputChange()
+ {
+ // Setup
+ var output = new TestPipingOutput();
+ var invalidPipingData = PipingDataFactory.CreateCalculationWithInvalidData();
+ invalidPipingData.Output = output;
+
+ // Call
+ var isValid = PipingCalculationService.Validate(invalidPipingData);
+
+ // Assert
+ Assert.IsFalse(isValid);
+ Assert.AreSame(output, invalidPipingData.Output);
+ }
+
+ [Test]
public void PerformValidatedCalculation_ValidPipingData_LogStartAndEndOfValidatingInputsAndCalculation()
{
// Setup
@@ -45,7 +61,11 @@
pipingData.Name = name;
// Call
- Action call = () => PipingCalculationService.PerfromValidatedCalculation(pipingData);
+ Action call = () =>
+ {
+ Assert.IsTrue(PipingCalculationService.Validate(pipingData));
+ PipingCalculationService.Calculate(pipingData);
+ };
// Assert
TestHelper.AssertLogMessages(call, messages =>
@@ -69,7 +89,8 @@
Assert.IsNull(validPipingData.Output);
// Call
- PipingCalculationService.PerfromValidatedCalculation(validPipingData);
+ Assert.IsTrue(PipingCalculationService.Validate(validPipingData));
+ PipingCalculationService.Calculate(validPipingData);
// Assert
Assert.IsNotNull(validPipingData.Output);
@@ -85,28 +106,14 @@
validPipingData.Output = output;
// Call
- PipingCalculationService.PerfromValidatedCalculation(validPipingData);
+ Assert.IsTrue(PipingCalculationService.Validate(validPipingData));
+ PipingCalculationService.Calculate(validPipingData);
// Assert
Assert.AreNotSame(output, validPipingData.Output);
}
[Test]
- public void PerformValidatedCalculation_InValidPipingDataWithOutput_ReturnsFalseNoOutputChange()
- {
- // Setup
- var output = new TestPipingOutput();
- var invalidPipingData = PipingDataFactory.CreateCalculationWithInvalidData();
- invalidPipingData.Output = output;
-
- // Call
- PipingCalculationService.PerfromValidatedCalculation(invalidPipingData);
-
- // Assert
- Assert.AreSame(output, invalidPipingData.Output);
- }
-
- [Test]
public void PerformValidatedCalculation_Diameter70AndAquiferPermeabilityZero_CalculationErrorOutputNull()
{
// Setup
@@ -115,87 +122,12 @@
validPipingData.DarcyPermeability = 0;
// Call
- PipingCalculationService.PerfromValidatedCalculation(validPipingData);
+ var isValid = PipingCalculationService.Validate(validPipingData);
+ PipingCalculationService.Calculate(validPipingData);
// Assert
+ Assert.IsTrue(isValid);
Assert.IsNull(validPipingData.Output);
}
-
- [Test]
- public void PerformValidatedCalculation_FailureMechanismHasMultipleValidCalculations_SetOutpufOnEach()
- {
- // Setup
- var failureMechanism = new PipingFailureMechanism();
- failureMechanism.Calculations.Clear();
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
-
- // Call
- PipingCalculationService.PerfromValidatedCalculation(failureMechanism);
-
- // Assert
- foreach (var calculation in failureMechanism.Calculations)
- {
- Assert.IsNotNull(calculation.Output);
- }
- }
-
- [Test]
- public void PerformValidatedCalculation_FailureMechanismHasCalculationsWithOutputs_ReplaceOutputOnEach()
- {
- // Setup
- var failureMechanism = new PipingFailureMechanism();
- failureMechanism.Calculations.Clear();
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
-
- foreach (var calculation in failureMechanism.Calculations)
- {
- calculation.Output = new TestPipingOutput();
- }
- var originalOutputs = failureMechanism.Calculations.Select(c => c.Output).ToArray();
-
- // Call
- PipingCalculationService.PerfromValidatedCalculation(failureMechanism);
-
- // Assert
- var index = 0;
- foreach (var calculation in failureMechanism.Calculations)
- {
- Assert.IsNotNull(calculation.Output);
- Assert.AreNotSame(originalOutputs[index++], calculation.Output);
- }
- }
-
- [Test]
- public void PerformValidatedCalculation_FailureMechanismHasOneInvalidCalculation_ReplaceOutputOnEach()
- {
- // Setup
- var failureMechanism = new PipingFailureMechanism();
- failureMechanism.Calculations.Clear();
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithInvalidData()); // Unable to calculate
- failureMechanism.Calculations.Add(PipingDataFactory.CreateCalculationWithValidInput());
-
- // Call
- PipingCalculationService.PerfromValidatedCalculation(failureMechanism);
-
- // Assert
- var index = 0;
- foreach (var calculation in failureMechanism.Calculations)
- {
- if (index++ == 1)
- {
- Assert.IsNull(calculation.Output,
- "Calculation input is not valid, therefore calculation cannot produce output.");
- }
- else
- {
- Assert.IsNotNull(calculation.Output);
- }
- }
- }
}
}
\ No newline at end of file
Fisheye: Tag 2f6a4919a4b3a16f09d7da1c09223335eb261692 refers to a dead (removed) revision in file `src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingFailureMechanismCalculationActivityTest.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/Ringtoets.Piping.Service.Test.csproj
===================================================================
diff -u -r1a305404abc19e3cb419a32ff48b793391722d8b -r2f6a4919a4b3a16f09d7da1c09223335eb261692
--- src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/Ringtoets.Piping.Service.Test.csproj (.../Ringtoets.Piping.Service.Test.csproj) (revision 1a305404abc19e3cb419a32ff48b793391722d8b)
+++ src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/Ringtoets.Piping.Service.Test.csproj (.../Ringtoets.Piping.Service.Test.csproj) (revision 2f6a4919a4b3a16f09d7da1c09223335eb261692)
@@ -51,7 +51,6 @@
-