Index: Ringtoets/Integration/src/Ringtoets.Integration.Data/DikeAssessmentSection.cs
===================================================================
diff -u -r019c82bf6273ff150976c8c2ea9b895258951455 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Integration/src/Ringtoets.Integration.Data/DikeAssessmentSection.cs (.../DikeAssessmentSection.cs) (revision 019c82bf6273ff150976c8c2ea9b895258951455)
+++ Ringtoets/Integration/src/Ringtoets.Integration.Data/DikeAssessmentSection.cs (.../DikeAssessmentSection.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -91,7 +91,7 @@
set
{
base.ReferenceLine = value;
- PipingFailureMechanism.GeneralInput.SectionLength = value == null ? double.NaN : Math2D.Length(value.Points);
+ PipingFailureMechanism.SemiProbabilisticInput.SectionLength = value == null ? double.NaN : Math2D.Length(value.Points);
}
}
@@ -104,7 +104,7 @@
protected set
{
base.FailureMechanismContribution = value;
- PipingFailureMechanism.GeneralInput.Norm = value.Norm;
+ PipingFailureMechanism.SemiProbabilisticInput.Norm = value.Norm;
}
}
Index: Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/DikeAssessmentSectionTest.cs
===================================================================
diff -u -r019c82bf6273ff150976c8c2ea9b895258951455 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/DikeAssessmentSectionTest.cs (.../DikeAssessmentSectionTest.cs) (revision 019c82bf6273ff150976c8c2ea9b895258951455)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Data.Test/DikeAssessmentSectionTest.cs (.../DikeAssessmentSectionTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -82,9 +82,9 @@
Assert.AreEqual(names, section.FailureMechanismContribution.Distribution.Select(d => d.Assessment));
Assert.AreEqual(Enumerable.Repeat(30000.0, 10), section.FailureMechanismContribution.Distribution.Select(d => d.Norm));
- Assert.AreEqual(pipingContribution, section.PipingFailureMechanism.GeneralInput.Contribution);
- Assert.AreEqual(30000.0, section.PipingFailureMechanism.GeneralInput.Norm);
- Assert.AreEqual(double.NaN, section.PipingFailureMechanism.GeneralInput.SectionLength);
+ Assert.AreEqual(pipingContribution, section.PipingFailureMechanism.SemiProbabilisticInput.Contribution);
+ Assert.AreEqual(30000.0, section.PipingFailureMechanism.SemiProbabilisticInput.Norm);
+ Assert.AreEqual(double.NaN, section.PipingFailureMechanism.SemiProbabilisticInput.SectionLength);
Assert.AreEqual(100, section.FailureMechanismContribution.Distribution.Sum(d => d.Contribution));
}
@@ -175,7 +175,7 @@
assessmentSection.ReferenceLine = referenceLine;
// Assert
- Assert.AreEqual(Math2D.Length(referenceLine.Points), assessmentSection.PipingFailureMechanism.GeneralInput.SectionLength);
+ Assert.AreEqual(Math2D.Length(referenceLine.Points), assessmentSection.PipingFailureMechanism.SemiProbabilisticInput.SectionLength);
}
[Test]
@@ -188,7 +188,7 @@
assessmentSection.ReferenceLine = null;
// Assert
- Assert.AreEqual(double.NaN, assessmentSection.PipingFailureMechanism.GeneralInput.SectionLength);
+ Assert.AreEqual(double.NaN, assessmentSection.PipingFailureMechanism.SemiProbabilisticInput.SectionLength);
}
}
}
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/GeneralPipingInput.cs
===================================================================
diff -u -r019c82bf6273ff150976c8c2ea9b895258951455 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/GeneralPipingInput.cs (.../GeneralPipingInput.cs) (revision 019c82bf6273ff150976c8c2ea9b895258951455)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/GeneralPipingInput.cs (.../GeneralPipingInput.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -19,10 +19,6 @@
// Stichting Deltares and remain full property of Stichting Deltares at all times.
// All rights reserved.
-using System;
-using MathNet.Numerics.Providers.LinearAlgebra;
-using Ringtoets.Common.Data.Properties;
-
namespace Ringtoets.Piping.Data
{
///
@@ -31,8 +27,6 @@
///
public class GeneralPipingInput
{
- private double contribution;
-
///
/// Initializes a new instance of the class.
///
@@ -49,11 +43,6 @@
Gravity = 9.81;
MeanDiameter70 = 2.08e-4;
SellmeijerReductionFactor = 0.3;
- A = 1.0;
- B = 350.0;
- SectionLength = double.NaN;
- Norm = 0;
- Contribution = double.NaN;
}
#region General parameters (used by multiple calculations)
@@ -135,51 +124,5 @@
public double SellmeijerReductionFactor { get; private set; }
#endregion
-
- #region Semi-probabilistic parameters
-
- ///
- /// Gets 'a' parameter used to factor in the 'length effect' when determining the
- /// maximum tolerated probability of failure.
- ///
- public double A { get; private set; }
-
- ///
- /// Gets 'b' parameter used to factor in the 'length effect' when determining the
- /// maximum tolerated probability of failure.
- ///
- public double B { get; private set; }
-
- ///
- /// Gets or sets the length of the assessment section.
- ///
- public double SectionLength { get; set; }
-
- ///
- /// Gets or sets the contribution of piping as a percentage (0-100) to the total of the failure
- /// probability of the assessment section.
- ///
- public double Contribution
- {
- get
- {
- return contribution;
- }
- set
- {
- if (value <= 0 || value > 100)
- {
- throw new ArgumentOutOfRangeException("value", Resources.Contribution_Value_should_be_in_interval_0_100);
- }
- contribution = value;
- }
- }
-
- ///
- /// Gets or sets the return period to assess for.
- ///
- public int Norm { get; set; }
-
- #endregion
}
}
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingCalculation.cs
===================================================================
diff -u -r1d8e1d2a0bb1d08433a9d6046942fa778b019489 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingCalculation.cs (.../PipingCalculation.cs) (revision 1d8e1d2a0bb1d08433a9d6046942fa778b019489)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingCalculation.cs (.../PipingCalculation.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -38,19 +38,25 @@
///
/// General piping calculation parameters that
/// are the same across all piping calculations.
+ /// General semi-probabilistic parameters that
+ /// are used in a semi-probabilistic piping assessment.
/// When
/// is null.
- public PipingCalculation(GeneralPipingInput generalInputParameters)
+ public PipingCalculation(GeneralPipingInput generalInputParameters, SemiProbabilisticPipingInput semiProbabilisticInputParameters)
{
if (generalInputParameters == null)
{
throw new ArgumentNullException("generalInputParameters");
}
+ if (semiProbabilisticInputParameters == null)
+ {
+ throw new ArgumentNullException("semiProbabilisticInputParameters");
+ }
Name = Resources.PipingCalculation_DefaultName;
Comments = new InputPlaceholder(Resources.Comments_DisplayName);
InputParameters = new PipingInput(generalInputParameters);
- SemiProbabilisticParameters = generalInputParameters;
+ SemiProbabilisticParameters = semiProbabilisticInputParameters;
}
///
@@ -61,7 +67,7 @@
///
/// Gets the parameters required to perform a semi-probabilistic assessment.
///
- public GeneralPipingInput SemiProbabilisticParameters { get; private set; }
+ public SemiProbabilisticPipingInput SemiProbabilisticParameters { get; private set; }
///
/// Gets the input parameters to perform a piping calculation with.
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingFailureMechanism.cs
===================================================================
diff -u -r019c82bf6273ff150976c8c2ea9b895258951455 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingFailureMechanism.cs (.../PipingFailureMechanism.cs) (revision 019c82bf6273ff150976c8c2ea9b895258951455)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingFailureMechanism.cs (.../PipingFailureMechanism.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -42,16 +42,17 @@
public PipingFailureMechanism()
: base(PipingDataResources.PipingFailureMechanism_DisplayName)
{
+ SemiProbabilisticInput = new SemiProbabilisticPipingInput();
GeneralInput = new GeneralPipingInput();
SurfaceLines = new ObservableList();
SoilProfiles = new ObservableList();
BoundaryConditions = new InputPlaceholder(RingtoetsCommonDataResources.FailureMechanism_BoundaryConditions_DisplayName);
var pipingCalculationGroup = new PipingCalculationGroup(PipingDataResources.PipingFailureMechanism_Calculations_DisplayName, false);
- pipingCalculationGroup.Children.Add(new PipingCalculation(GeneralInput));
+ pipingCalculationGroup.Children.Add(new PipingCalculation(GeneralInput, SemiProbabilisticInput));
CalculationsGroup = pipingCalculationGroup;
AssessmentResult = new OutputPlaceholder(RingtoetsCommonDataResources.FailureMechanism_AssessmentResult_DisplayName);
}
-
+
public override IEnumerable CalculationItems
{
get
@@ -64,11 +65,11 @@
{
get
{
- return GeneralInput.Contribution;
+ return SemiProbabilisticInput.Contribution;
}
set
{
- GeneralInput.Contribution = value;
+ SemiProbabilisticInput.Contribution = value;
}
}
@@ -101,5 +102,11 @@
/// Gets the general piping calculation input parameters that apply to each piping calculation.
///
public GeneralPipingInput GeneralInput { get; private set; }
+
+ ///
+ /// Gets the general semi-probabilistic calculation input parameters that apply to each calculation
+ /// in a semi-probabilistic assessment.
+ ///
+ public SemiProbabilisticPipingInput SemiProbabilisticInput { get; set; }
}
}
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/Ringtoets.Piping.Data.csproj
===================================================================
diff -u -r019c82bf6273ff150976c8c2ea9b895258951455 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/Ringtoets.Piping.Data.csproj (.../Ringtoets.Piping.Data.csproj) (revision 019c82bf6273ff150976c8c2ea9b895258951455)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/Ringtoets.Piping.Data.csproj (.../Ringtoets.Piping.Data.csproj) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -80,6 +80,7 @@
True
Resources.resx
+
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/SemiProbabilisticPipingInput.cs
===================================================================
diff -u
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/SemiProbabilisticPipingInput.cs (revision 0)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/SemiProbabilisticPipingInput.cs (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -0,0 +1,62 @@
+using System;
+using Ringtoets.Common.Data.Properties;
+
+namespace Ringtoets.Piping.Data
+{
+ public class SemiProbabilisticPipingInput
+ {
+ private double contribution;
+
+ public SemiProbabilisticPipingInput()
+ {
+ A = 1.0;
+ B = 350.0;
+ SectionLength = double.NaN;
+ Norm = 0;
+ Contribution = double.NaN;
+ }
+
+ ///
+ /// Gets 'a' parameter used to factor in the 'length effect' when determining the
+ /// maximum tolerated probability of failure.
+ ///
+ public double A { get; private set; }
+
+ ///
+ /// Gets 'b' parameter used to factor in the 'length effect' when determining the
+ /// maximum tolerated probability of failure.
+ ///
+ public double B { get; private set; }
+
+ ///
+ /// Gets or sets the length of the assessment section.
+ ///
+ public double SectionLength { get; set; }
+
+ ///
+ /// Gets or sets the contribution of piping as a percentage (0-100) to the total of the failure
+ /// probability of the assessment section.
+ ///
+ public double Contribution
+ {
+ get
+ {
+ return contribution;
+ }
+ set
+ {
+ if (value <= 0 || value > 100)
+ {
+ throw new ArgumentOutOfRangeException("value", Resources.Contribution_Value_should_be_in_interval_0_100);
+ }
+ contribution = value;
+ }
+ }
+
+ ///
+ /// Gets or sets the return period to assess for.
+ ///
+ public int Norm { get; set; }
+
+ }
+}
\ No newline at end of file
Fisheye: Tag de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb refers to a dead (removed) revision in file `Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/GeneralPipingInputProperties.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingFailureMechanismContextProperties.cs
===================================================================
diff -u
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingFailureMechanismContextProperties.cs (revision 0)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingFailureMechanismContextProperties.cs (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -0,0 +1,192 @@
+using Core.Common.Gui.Attributes;
+using Core.Common.Gui.PropertyBag;
+using Core.Common.Utils.Attributes;
+
+using Ringtoets.Piping.Data;
+using Ringtoets.Piping.Forms.PresentationObjects;
+using Ringtoets.Piping.Forms.Properties;
+
+namespace Ringtoets.Piping.Forms.PropertyClasses
+{
+ ///
+ /// ViewModel of for properties panel.
+ ///
+ public class PipingFailureMechanismContextProperties : ObjectProperties
+ {
+ #region Model Factors
+
+ [PropertyOrder(1)]
+ [ResourcesCategory(typeof(Resources), "Categories_ModelFactors")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_UpliftModelFactor_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_UpliftModelFactor_Description")]
+ public double UpliftModelFactor
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.UpliftModelFactor;
+ }
+ }
+
+ [PropertyOrder(2)]
+ [ResourcesCategory(typeof(Resources), "Categories_ModelFactors")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_SellmeijerModelFactor_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_SellmeijerModelFactor_Description")]
+ public double SellmeijerModelFactor
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.SellmeijerModelFactor;
+ }
+ }
+
+ #endregion
+
+ #region General
+
+ [PropertyOrder(11)]
+ [ResourcesCategory(typeof(Resources), "Categories_General")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_WaterVolumetricWeight_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_WaterVolumetricWeight_Description")]
+ public double WaterVolumetricWeight
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.WaterVolumetricWeight;
+ }
+ }
+
+ #endregion
+
+ #region Heave
+
+ [PropertyOrder(21)]
+ [ResourcesCategory(typeof(Resources), "Categories_Heave")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_CriticalHeaveGradient_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_CriticalHeaveGradient_Description")]
+ public double CriticalHeaveGradient
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.CriticalHeaveGradient;
+ }
+ }
+
+ #endregion
+
+ #region Sellmeijer
+
+ [PropertyOrder(31)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_SandParticlesVolumicWeight_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_SandParticlesVolumicWeight_Description")]
+ public double SandParticlesVolumicWeight
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.SandParticlesVolumicWeight;
+ }
+ }
+
+ [PropertyOrder(32)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_WhitesDragCoefficient_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_WhitesDragCoefficient_Description")]
+ public double WhitesDragCoefficient
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.WhitesDragCoefficient;
+ }
+ }
+
+ [PropertyOrder(33)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_BeddingAngle_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_BeddingAngle_Description")]
+ public double BeddingAngle
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.BeddingAngle;
+ }
+ }
+
+ [PropertyOrder(34)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_WaterKinematicViscosity_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_WaterKinematicViscosity_Description")]
+ public double WaterKinematicViscosity
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.WaterKinematicViscosity;
+ }
+ }
+
+ [PropertyOrder(35)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_Gravity_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_Gravity_Description")]
+ public double Gravity
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.Gravity;
+ }
+ }
+
+ [PropertyOrder(36)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_MeanDiameter70_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_MeanDiameter70_Description")]
+ public double MeanDiameter70
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.MeanDiameter70;
+ }
+ }
+
+ [PropertyOrder(37)]
+ [ResourcesCategory(typeof(Resources), "Categories_Sellmeijer")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_SellmeijerReductionFactor_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_SellmeijerReductionFactor_Description")]
+ public double SellmeijerReductionFactor
+ {
+ get
+ {
+ return data.WrappedData.GeneralInput.SellmeijerReductionFactor;
+ }
+ }
+
+ #endregion
+
+ #region Semi-probabilistic parameters
+
+ [PropertyOrder(41)]
+ [ResourcesCategory(typeof(Resources), "Categories_SemiProbabilisticParameters")]
+ [ResourcesDisplayName(typeof(Resources), "GeneralPipingInput_A_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_A_Description")]
+ public double A
+ {
+ get
+ {
+ return data.WrappedData.SemiProbabilisticInput.A;
+ }
+ }
+
+ [PropertyOrder(42)]
+ [ResourcesCategory(typeof(Resources), "Categories_SemiProbabilisticParameters")]
+ [ResourcesDisplayName(typeof(Resources), "GenerapPipingInput_B_DisplayName")]
+ [ResourcesDescription(typeof(Resources), "GeneralPipingInput_B_Description")]
+ public double B
+ {
+ get
+ {
+ return data.WrappedData.SemiProbabilisticInput.B;
+ }
+ }
+
+ #endregion
+ }
+}
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Ringtoets.Piping.Forms.csproj
===================================================================
diff -u -rc0a3ced404197fd781c6fcbcfc21c6676592be57 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Ringtoets.Piping.Forms.csproj (.../Ringtoets.Piping.Forms.csproj) (revision c0a3ced404197fd781c6fcbcfc21c6676592be57)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Ringtoets.Piping.Forms.csproj (.../Ringtoets.Piping.Forms.csproj) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -65,7 +65,7 @@
True
Resources.resx
-
+
Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs
===================================================================
diff -u -r61fef56583566114a59a3c422aabd76efa01707f -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision 61fef56583566114a59a3c422aabd76efa01707f)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -57,10 +57,7 @@
public override IEnumerable GetPropertyInfos()
{
- yield return new PropertyInfo
- {
- GetObjectPropertiesData = mechanism => mechanism.WrappedData.GeneralInput
- };
+ yield return new PropertyInfo();
yield return new PropertyInfo();
yield return new PropertyInfo();
yield return new PropertyInfo();
@@ -350,7 +347,7 @@
private void AddCalculation(PipingFailureMechanism failureMechanism)
{
- var calculation = new PipingCalculation(failureMechanism.GeneralInput)
+ var calculation = new PipingCalculation(failureMechanism.GeneralInput, failureMechanism.SemiProbabilisticInput)
{
Name = NamingHelper.GetUniqueName(failureMechanism.CalculationsGroup.Children, PipingDataResources.PipingCalculation_DefaultName, c => c.Name)
};
@@ -558,7 +555,7 @@
PipingFormsResources.PipingCalculationGroup_Add_PipingCalculation_ToolTip,
PipingFormsResources.PipingIcon, (o, args) =>
{
- var calculation = new PipingCalculation(nodeData.PipingFailureMechanism.GeneralInput)
+ var calculation = new PipingCalculation(nodeData.PipingFailureMechanism.GeneralInput, nodeData.PipingFailureMechanism.SemiProbabilisticInput)
{
Name = NamingHelper.GetUniqueName(group.Children, PipingDataResources.PipingCalculation_DefaultName, c => c.Name)
};
Index: Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingSemiProbabilisticCalculationService.cs
===================================================================
diff -u -r74e3dea657b90b371e265914bee337c76e509d93 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingSemiProbabilisticCalculationService.cs (.../PipingSemiProbabilisticCalculationService.cs) (revision 74e3dea657b90b371e265914bee337c76e509d93)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Service/PipingSemiProbabilisticCalculationService.cs (.../PipingSemiProbabilisticCalculationService.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -22,17 +22,20 @@
///
/// Calculates the semi-probabilistic results given a with .
///
- ///
- ///
+ /// The calculation which is used as input for the semi-probabilistic assessment. If the semi-
+ /// probabilistic calculation is successful, is set.
+ /// Thrown when calculation has no output from a piping calculation.
public static void Calculate(PipingCalculation calculation)
{
- GeneralPipingInput semiProbabilisticParameters = calculation.SemiProbabilisticParameters;
- var result = calculation.Output;
+ ValidateOutputOnCalculation(calculation);
+ SemiProbabilisticPipingInput semiProbabilisticParameters = calculation.SemiProbabilisticParameters;
+ var pipingOutput = calculation.Output;
+
var calculator = new PipingSemiProbabilisticCalculationService(
- result.SellmeijerFactorOfSafety,
- result.UpliftFactorOfSafety,
- result.HeaveFactorOfSafety,
+ pipingOutput.SellmeijerFactorOfSafety,
+ pipingOutput.UpliftFactorOfSafety,
+ pipingOutput.HeaveFactorOfSafety,
semiProbabilisticParameters.Norm,
semiProbabilisticParameters.A,
semiProbabilisticParameters.B,
@@ -45,6 +48,14 @@
};
}
+ private static void ValidateOutputOnCalculation(PipingCalculation calculation)
+ {
+ if (!calculation.HasOutput)
+ {
+ throw new ArgumentNullException("calculation", "Cannot perform a semi-probabilistic calculation without output form the piping kernel.");
+ }
+ }
+
///
/// Creates a new instance of .
///
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/GeneralPipingInputTest.cs
===================================================================
diff -u -r019c82bf6273ff150976c8c2ea9b895258951455 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/GeneralPipingInputTest.cs (.../GeneralPipingInputTest.cs) (revision 019c82bf6273ff150976c8c2ea9b895258951455)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/GeneralPipingInputTest.cs (.../GeneralPipingInputTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -26,13 +26,6 @@
Assert.AreEqual(9.81, inputParameters.Gravity);
Assert.AreEqual(2.08e-4, inputParameters.MeanDiameter70);
Assert.AreEqual(0.3, inputParameters.SellmeijerReductionFactor);
-
- Assert.AreEqual(1.0, inputParameters.A);
- Assert.AreEqual(350.0, inputParameters.B);
-
- Assert.IsNaN(inputParameters.SectionLength);
- Assert.AreEqual(0, inputParameters.Norm);
- Assert.IsNaN(inputParameters.Contribution);
}
}
}
\ No newline at end of file
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/IPipingCalculationItemExtensionsTest.cs
===================================================================
diff -u -r1c01ea681887e96b5b80fb7d23680a4eeac9bd50 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/IPipingCalculationItemExtensionsTest.cs (.../IPipingCalculationItemExtensionsTest.cs) (revision 1c01ea681887e96b5b80fb7d23680a4eeac9bd50)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/IPipingCalculationItemExtensionsTest.cs (.../IPipingCalculationItemExtensionsTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -12,7 +12,7 @@
public void GetPipingCalculations_FromPipingCalculation_ReturnThatCalculationInstance()
{
// Setup
- IPipingCalculationItem calculation = new PipingCalculation(new GeneralPipingInput());
+ IPipingCalculationItem calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
// Call
IEnumerable result = calculation.GetPipingCalculations();
@@ -57,10 +57,11 @@
{
// Setup
var generalPipingInput = new GeneralPipingInput();
- var calculation1 = new PipingCalculation(generalPipingInput);
- var calculation2 = new PipingCalculation(generalPipingInput);
- var calculation3 = new PipingCalculation(generalPipingInput);
- var calculation4 = new PipingCalculation(generalPipingInput);
+ var semiProbabilisticInput = new SemiProbabilisticPipingInput();
+ var calculation1 = new PipingCalculation(generalPipingInput, semiProbabilisticInput);
+ var calculation2 = new PipingCalculation(generalPipingInput, semiProbabilisticInput);
+ var calculation3 = new PipingCalculation(generalPipingInput, semiProbabilisticInput);
+ var calculation4 = new PipingCalculation(generalPipingInput, semiProbabilisticInput);
var subsubGroup = new PipingCalculationGroup();
subsubGroup.Children.Add(calculation4);
@@ -111,8 +112,9 @@
{
// Setup
var generalInputParameters = new GeneralPipingInput();
- var calculation1 = new PipingCalculation(generalInputParameters);
- var calculation2 = new PipingCalculation(generalInputParameters);
+ var semiProbabilisticInput = new SemiProbabilisticPipingInput();
+ var calculation1 = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
+ var calculation2 = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
IEnumerable calculationArray = new[] { calculation1, calculation2 };
// Call
@@ -142,11 +144,12 @@
{
// Setup
var generalInputParameters = new GeneralPipingInput();
- var rootcalculation = new PipingCalculation(generalInputParameters);
- var calculation1 = new PipingCalculation(generalInputParameters);
- var calculation2 = new PipingCalculation(generalInputParameters);
- var calculation3 = new PipingCalculation(generalInputParameters);
- var calculation4 = new PipingCalculation(generalInputParameters);
+ var semiProbabilisticInput = new SemiProbabilisticPipingInput();
+ var rootcalculation = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
+ var calculation1 = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
+ var calculation2 = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
+ var calculation3 = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
+ var calculation4 = new PipingCalculation(generalInputParameters, semiProbabilisticInput);
var subsubGroup = new PipingCalculationGroup();
subsubGroup.Children.Add(calculation4);
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingCalculationGroupTest.cs
===================================================================
diff -u -r1c01ea681887e96b5b80fb7d23680a4eeac9bd50 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingCalculationGroupTest.cs (.../PipingCalculationGroupTest.cs) (revision 1c01ea681887e96b5b80fb7d23680a4eeac9bd50)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingCalculationGroupTest.cs (.../PipingCalculationGroupTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -87,7 +87,7 @@
public void Children_AddPipingCalculation_CalculationAddedToCollection()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var group = new PipingCalculationGroup();
@@ -103,7 +103,7 @@
public void Children_RemovePipingCalculation_CalculationRemovedFromCollection()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var group = new PipingCalculationGroup();
group.Children.Add(calculation);
@@ -123,8 +123,9 @@
{
// Setup
var generalInputParameters = new GeneralPipingInput();
- var calculation = new PipingCalculation(generalInputParameters);
- var calculationToInsert = new PipingCalculation(generalInputParameters);
+ var semiProbabilisticInputParameters = new SemiProbabilisticPipingInput();
+ var calculation = new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters);
+ var calculationToInsert = new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters);
var group = new PipingCalculationGroup();
group.Children.Add(calculation);
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingCalculationTest.cs
===================================================================
diff -u -r74e3dea657b90b371e265914bee337c76e509d93 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingCalculationTest.cs (.../PipingCalculationTest.cs) (revision 74e3dea657b90b371e265914bee337c76e509d93)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingCalculationTest.cs (.../PipingCalculationTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -22,9 +22,10 @@
{
// Setup
var generalInputParameters = new GeneralPipingInput();
+ var semiProbabilisticInputParameters = new SemiProbabilisticPipingInput();
// Call
- var calculation = new PipingCalculation(generalInputParameters);
+ var calculation = new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters);
// Assert
Assert.IsInstanceOf(calculation);
@@ -43,13 +44,23 @@
public void Constructor_GeneralPipingInputIsNull_ThrowArgumentNullException()
{
// Call
- TestDelegate call = () => new PipingCalculation(null);
+ TestDelegate call = () => new PipingCalculation(null, new SemiProbabilisticPipingInput());
// Assert
Assert.Throws(call);
}
[Test]
+ public void Constructor_SemiProbabilisticPipingInputIsNull_ThrowArgumentNullException()
+ {
+ // Call
+ TestDelegate call = () => new PipingCalculation(new GeneralPipingInput(), null);
+
+ // Assert
+ Assert.Throws(call);
+ }
+
+ [Test]
public void Notify_SingleListenerAttached_ListenerIsNotified()
{
// Setup
@@ -58,7 +69,7 @@
mockRepository.ReplayAll();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
calculation.Attach(observer);
@@ -74,7 +85,7 @@
observer.Expect(o => o.UpdateObserver()).Repeat.Never();
mockRepository.ReplayAll();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
calculation.Attach(observer);
calculation.Detach(observer);
@@ -95,7 +106,7 @@
mockRepository.ReplayAll();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
calculation.Attach(observerA);
calculation.Attach(observerB);
@@ -116,7 +127,7 @@
mockRepository.ReplayAll();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
calculation.Attach(observerA);
calculation.Attach(observerB);
@@ -132,7 +143,7 @@
// Setup
var observer = mockRepository.StrictMock();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
// Call & Assert
calculation.Detach(observer);
@@ -142,7 +153,7 @@
public void ClearOutput_Always_SetsOutputToNull()
{
// Setup
- var data = new PipingCalculation(new GeneralPipingInput())
+ var data = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
};
@@ -158,7 +169,7 @@
public void HasOutput_OutputNull_ReturnsFalse()
{
// Setup
- var data = new PipingCalculation(new GeneralPipingInput())
+ var data = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = null
};
@@ -171,7 +182,7 @@
public void HasOutput_OutputSet_ReturnsTrue()
{
// Setup
- var data = new PipingCalculation(new GeneralPipingInput())
+ var data = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
};
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingFailureMechanismTest.cs
===================================================================
diff -u -r1c01ea681887e96b5b80fb7d23680a4eeac9bd50 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingFailureMechanismTest.cs (.../PipingFailureMechanismTest.cs) (revision 1c01ea681887e96b5b80fb7d23680a4eeac9bd50)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingFailureMechanismTest.cs (.../PipingFailureMechanismTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -137,7 +137,7 @@
public void Calculations_AddPipingCalculation_ItemIsAddedToCollection()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var failureMechanism = new PipingFailureMechanism();
@@ -152,7 +152,7 @@
public void Calculations_RemovePipingCalculation_ItemIsRemovedFromCollection()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var failureMechanism = new PipingFailureMechanism();
failureMechanism.CalculationsGroup.Children.Add(calculation);
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/Ringtoets.Piping.Data.Test.csproj
===================================================================
diff -u -r1d8e1d2a0bb1d08433a9d6046942fa778b019489 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/Ringtoets.Piping.Data.Test.csproj (.../Ringtoets.Piping.Data.Test.csproj) (revision 1d8e1d2a0bb1d08433a9d6046942fa778b019489)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/Ringtoets.Piping.Data.Test.csproj (.../Ringtoets.Piping.Data.Test.csproj) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -78,6 +78,7 @@
+
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/SemiProbabilisticPipingInputTest.cs
===================================================================
diff -u
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/SemiProbabilisticPipingInputTest.cs (revision 0)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/SemiProbabilisticPipingInputTest.cs (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -0,0 +1,25 @@
+using NUnit.Framework;
+
+namespace Ringtoets.Piping.Data.Test
+{
+ [TestFixture]
+ public class SemiProbabilisticPipingInputTest
+ {
+ [Test]
+ public void Constructor_DefaultPropertiesSet()
+ {
+ // Call
+ var inputParameters = new SemiProbabilisticPipingInput();
+
+ // Assert
+
+ Assert.AreEqual(1.0, inputParameters.A);
+ Assert.AreEqual(350.0, inputParameters.B);
+
+ Assert.IsNaN(inputParameters.SectionLength);
+ Assert.AreEqual(0, inputParameters.Norm);
+ Assert.IsNaN(inputParameters.Contribution);
+
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.TestUtil/PipingCalculationFactory.cs
===================================================================
diff -u -rc0a3ced404197fd781c6fcbcfc21c6676592be57 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.TestUtil/PipingCalculationFactory.cs (.../PipingCalculationFactory.cs) (revision c0a3ced404197fd781c6fcbcfc21c6676592be57)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.TestUtil/PipingCalculationFactory.cs (.../PipingCalculationFactory.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -10,7 +10,7 @@
{
public static PipingCalculation CreateCalculationWithInvalidData()
{
- return new PipingCalculation(new GeneralPipingInput());
+ return new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
}
public static PipingCalculation CreateCalculationWithValidInput()
@@ -51,7 +51,7 @@
{
DesignWaterLevel = (RoundedDouble) 1.0
};
- return new PipingCalculation(new GeneralPipingInput())
+ return new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
InputParameters =
{
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PresentationObjects/PipingCalculationContextTest.cs
===================================================================
diff -u -r1c01ea681887e96b5b80fb7d23680a4eeac9bd50 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PresentationObjects/PipingCalculationContextTest.cs (.../PipingCalculationContextTest.cs) (revision 1c01ea681887e96b5b80fb7d23680a4eeac9bd50)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PresentationObjects/PipingCalculationContextTest.cs (.../PipingCalculationContextTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -27,7 +27,7 @@
{
new TestPipingSoilProfile()
};
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var mocks = new MockRepository();
var pipingFailureMechanismMock = mocks.StrictMock();
@@ -59,7 +59,7 @@
{
new TestPipingSoilProfile()
};
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var mocks = new MockRepository();
var assessmentSection = mocks.StrictMock();
mocks.ReplayAll();
@@ -83,7 +83,7 @@
{
new TestPipingSoilProfile()
};
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var mocks = new MockRepository();
var pipingFailureMechanismMock = mocks.StrictMock();
mocks.ReplayAll();
@@ -111,7 +111,7 @@
{
new TestPipingSoilProfile()
};
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
@@ -142,7 +142,7 @@
{
new TestPipingSoilProfile()
};
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
Fisheye: Tag de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb refers to a dead (removed) revision in file `Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/GeneralPipingInputPropertiesTest.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingCalculationContextPropertiesTest.cs
===================================================================
diff -u -r1c01ea681887e96b5b80fb7d23680a4eeac9bd50 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingCalculationContextPropertiesTest.cs (.../PipingCalculationContextPropertiesTest.cs) (revision 1c01ea681887e96b5b80fb7d23680a4eeac9bd50)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingCalculationContextPropertiesTest.cs (.../PipingCalculationContextPropertiesTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -31,7 +31,7 @@
{
// Setup
const string name = "";
- var calculation = new PipingCalculation(new GeneralPipingInput())
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Name = name
};
@@ -65,7 +65,7 @@
var assessmentSectionBaseMock = mocks.StrictMock();
mocks.ReplayAll();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
calculation.Attach(projectObserver);
var properties = new PipingCalculationContextProperties
@@ -96,7 +96,7 @@
var assessmentSectionBaseMock = mocks.StrictMock();
mocks.ReplayAll();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
calculation.Attach(projectObserver);
var properties = new PipingCalculationContextProperties
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingFailureMechanismContextPropertiesTest.cs
===================================================================
diff -u
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingFailureMechanismContextPropertiesTest.cs (revision 0)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingFailureMechanismContextPropertiesTest.cs (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -0,0 +1,57 @@
+using Core.Common.Gui.PropertyBag;
+
+using NUnit.Framework;
+using Rhino.Mocks;
+using Ringtoets.Common.Data;
+using Ringtoets.Piping.Data;
+using Ringtoets.Piping.Forms.PresentationObjects;
+using Ringtoets.Piping.Forms.PropertyClasses;
+
+namespace Ringtoets.Piping.Forms.Test.PropertyClasses
+{
+ [TestFixture]
+ public class PipingFailureMechanismContextPropertiesTest
+ {
+ [Test]
+ public void Constructor_ExpectedValues()
+ {
+ // Setup
+
+ // Call
+ var properties = new PipingFailureMechanismContextProperties();
+
+ // Assert
+ Assert.IsInstanceOf>(properties);
+ }
+
+ [Test]
+ public void Data_SetNewPipingFailureMechanismContextInstance_ReturnCorrectPropertyValues()
+ {
+ // Setup
+ var failureMechanism = new PipingFailureMechanism();
+ var properties = new PipingFailureMechanismContextProperties();
+
+ // Call
+ properties.Data = new PipingFailureMechanismContext(failureMechanism, new MockRepository().StrictMock());
+
+ // Assert
+ Assert.AreEqual(failureMechanism.GeneralInput.UpliftModelFactor, properties.UpliftModelFactor);
+ Assert.AreEqual(failureMechanism.GeneralInput.SellmeijerModelFactor, properties.SellmeijerModelFactor);
+
+ Assert.AreEqual(failureMechanism.GeneralInput.WaterVolumetricWeight, properties.WaterVolumetricWeight);
+
+ Assert.AreEqual(failureMechanism.GeneralInput.CriticalHeaveGradient, properties.CriticalHeaveGradient);
+
+ Assert.AreEqual(failureMechanism.GeneralInput.SandParticlesVolumicWeight, properties.SandParticlesVolumicWeight);
+ Assert.AreEqual(failureMechanism.GeneralInput.WhitesDragCoefficient, properties.WhitesDragCoefficient);
+ Assert.AreEqual(failureMechanism.GeneralInput.BeddingAngle, properties.BeddingAngle);
+ Assert.AreEqual(failureMechanism.GeneralInput.WaterKinematicViscosity, properties.WaterKinematicViscosity);
+ Assert.AreEqual(failureMechanism.GeneralInput.Gravity, properties.Gravity);
+ Assert.AreEqual(failureMechanism.GeneralInput.MeanDiameter70, properties.MeanDiameter70);
+ Assert.AreEqual(failureMechanism.GeneralInput.SellmeijerReductionFactor, properties.SellmeijerReductionFactor);
+
+ Assert.AreEqual(failureMechanism.SemiProbabilisticInput.A, properties.A);
+ Assert.AreEqual(failureMechanism.SemiProbabilisticInput.B, properties.B);
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/Ringtoets.Piping.Forms.Test.csproj
===================================================================
diff -u -rc0a3ced404197fd781c6fcbcfc21c6676592be57 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/Ringtoets.Piping.Forms.Test.csproj (.../Ringtoets.Piping.Forms.Test.csproj) (revision c0a3ced404197fd781c6fcbcfc21c6676592be57)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/Ringtoets.Piping.Forms.Test.csproj (.../Ringtoets.Piping.Forms.Test.csproj) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -61,7 +61,7 @@
-
+
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationContextTreeNodeInfoTest.cs
===================================================================
diff -u -r3c10891728420f1c0aa0071574bbfb149710c556 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationContextTreeNodeInfoTest.cs (.../PipingCalculationContextTreeNodeInfoTest.cs) (revision 3c10891728420f1c0aa0071574bbfb149710c556)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationContextTreeNodeInfoTest.cs (.../PipingCalculationContextTreeNodeInfoTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -56,7 +56,7 @@
{
// Setup
var testname = "testName";
- var calculation = new PipingCalculation(new GeneralPipingInput())
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Name = testname
};
@@ -99,7 +99,7 @@
public void EnsureVisibleOnCreate_Always_ReturnsTrue()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput())
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new PipingOutput(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
};
@@ -135,7 +135,7 @@
public void ChildNodeObjects_WithOutputData_ReturnOutputChildNode()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput())
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new PipingOutput(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
};
@@ -178,7 +178,7 @@
var assessmentSectionBaseMock = mocks.StrictMock();
mocks.ReplayAll();
- var pipingCalculationContext = new PipingCalculationContext(new PipingCalculation(new GeneralPipingInput()),
+ var pipingCalculationContext = new PipingCalculationContext(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput()),
Enumerable.Empty(),
Enumerable.Empty(),
pipingFailureMechanismMock,
@@ -219,7 +219,7 @@
var observerMock = mocks.StrictMock();
observerMock.Expect(o => o.UpdateObserver());
- var calculation = new PipingCalculation(new GeneralPipingInput())
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Name = ""
};
@@ -260,7 +260,7 @@
// Setup
var gui = mocks.StrictMock();
var treeViewControlMock = mocks.StrictMock();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
var nodeData = new PipingCalculationContext(calculation,
@@ -291,7 +291,7 @@
{
var gui = mocks.StrictMock();
var treeViewControlMock = mocks.StrictMock();
- var calculation = new PipingCalculation(new GeneralPipingInput())
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
};
@@ -329,7 +329,7 @@
var treeViewControlMock = mocks.StrictMock();
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
- var nodeData = new PipingCalculationContext(new PipingCalculation(new GeneralPipingInput()),
+ var nodeData = new PipingCalculationContext(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput()),
Enumerable.Empty(),
Enumerable.Empty(),
pipingFailureMechanismMock,
@@ -370,7 +370,7 @@
public void CanRemove_ParentIsPipingCalculationGroupWithCalculation_ReturnTrue(bool groupNameEditable)
{
// Setup
- var calculationToBeRemoved = new PipingCalculation(new GeneralPipingInput());
+ var calculationToBeRemoved = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var group = new PipingCalculationGroup("", groupNameEditable);
group.Children.Add(calculationToBeRemoved);
@@ -402,7 +402,7 @@
public void CanRemove_ParentIsPipingCalculationGroupWithoutCalculation_ReturnFalse(bool groupNameEditable)
{
// Setup
- var calculationToBeRemoved = new PipingCalculation(new GeneralPipingInput());
+ var calculationToBeRemoved = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var group = new PipingCalculationGroup("", groupNameEditable);
var pipingFailureMechanismMock = mocks.StrictMock();
@@ -436,7 +436,7 @@
var assessmentSectionBaseMock = mocks.StrictMock();
mocks.ReplayAll();
- var nodeMock = new PipingCalculationContext(new PipingCalculation(new GeneralPipingInput()),
+ var nodeMock = new PipingCalculationContext(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput()),
Enumerable.Empty(),
Enumerable.Empty(),
pipingFailureMechanismMock,
@@ -459,11 +459,11 @@
var observer = mocks.StrictMock();
observer.Expect(o => o.UpdateObserver());
- var elementToBeRemoved = new PipingCalculation(new GeneralPipingInput());
+ var elementToBeRemoved = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var group = new PipingCalculationGroup();
group.Children.Add(elementToBeRemoved);
- group.Children.Add(new PipingCalculation(new GeneralPipingInput()));
+ group.Children.Add(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput()));
group.Attach(observer);
var pipingFailureMechanismMock = mocks.StrictMock();
@@ -503,7 +503,7 @@
var mainWindow = mocks.DynamicMock();
var observer = mocks.StrictMock();
var treeViewControlMock = mocks.StrictMock();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
var pipingCalculationContext = new PipingCalculationContext(calculation,
@@ -562,7 +562,7 @@
var gui = mocks.DynamicMock();
var observer = mocks.StrictMock();
var treeViewControlMock = mocks.StrictMock();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
var pipingCalculationContext = new PipingCalculationContext(calculation,
@@ -606,7 +606,7 @@
var observer = mocks.StrictMock();
var treeViewControlMock = mocks.StrictMock();
var calculateContextMenuItemIndex = 1;
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var validPipingInput = new TestPipingInput();
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
@@ -679,7 +679,7 @@
var gui = mocks.DynamicMock();
var observer = mocks.StrictMock();
var treeViewControlMock = mocks.StrictMock();
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var pipingFailureMechanismMock = mocks.StrictMock();
var assessmentSectionBaseMock = mocks.StrictMock();
var pipingCalculationContext = new PipingCalculationContext(calculation,
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs
===================================================================
diff -u -rc9fd032c799e1325decbec83d99e94851a954816 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs (.../PipingCalculationGroupContextTreeNodeInfoTest.cs) (revision c9fd032c799e1325decbec83d99e94851a954816)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs (.../PipingCalculationGroupContextTreeNodeInfoTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -144,7 +144,7 @@
// Setup
var calculationItem = mocks.StrictMock();
- var childCalculation = new PipingCalculation(new GeneralPipingInput());
+ var childCalculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
var childGroup = new PipingCalculationGroup();
@@ -190,7 +190,7 @@
var group = new PipingCalculationGroup();
parentGroup.Children.Add(group);
- group.Children.Add(new PipingCalculation(new GeneralPipingInput())
+ group.Children.Add(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
});
@@ -308,7 +308,7 @@
var gui = mocks.StrictMock();
var group = new PipingCalculationGroup();
- group.Children.Add(new PipingCalculation(new GeneralPipingInput())
+ group.Children.Add(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
});
@@ -415,7 +415,7 @@
var gui = mocks.StrictMock();
var group = new PipingCalculationGroup();
- group.Children.Add(new PipingCalculation(new GeneralPipingInput())
+ group.Children.Add(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
});
@@ -1380,7 +1380,7 @@
switch (type)
{
case PipingCalculationItemType.Calculation:
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
if (initialName != null)
{
calculation.Name = initialName;
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismTreeNodeInfoTest.cs
===================================================================
diff -u -r61fef56583566114a59a3c422aabd76efa01707f -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismTreeNodeInfoTest.cs (.../PipingFailureMechanismTreeNodeInfoTest.cs) (revision 61fef56583566114a59a3c422aabd76efa01707f)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismTreeNodeInfoTest.cs (.../PipingFailureMechanismTreeNodeInfoTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -103,8 +103,9 @@
var pipingFailureMechanism = new PipingFailureMechanism();
var generalInputParameters = new GeneralPipingInput();
- pipingFailureMechanism.CalculationsGroup.Children.Add(new PipingCalculation(generalInputParameters));
- pipingFailureMechanism.CalculationsGroup.Children.Add(new PipingCalculation(generalInputParameters));
+ var semiProbabilisticInputParameters = new SemiProbabilisticPipingInput();
+ pipingFailureMechanism.CalculationsGroup.Children.Add(new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters));
+ pipingFailureMechanism.CalculationsGroup.Children.Add(new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters));
var pipingFailureMechanismContext = new PipingFailureMechanismContext(pipingFailureMechanism, assessmentSection);
@@ -158,11 +159,12 @@
var treeViewControl = mocks.StrictMock();
var menuBuilder = new CustomItemsOnlyContextMenuBuilder();
var generalInputParameters = new GeneralPipingInput();
- var pipingCalculation1 = new PipingCalculation(generalInputParameters)
+ var semiProbabilisticInputParameters = new SemiProbabilisticPipingInput();
+ var pipingCalculation1 = new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters)
{
Output = new TestPipingOutput()
};
- var pipingCalculation2 = new PipingCalculation(generalInputParameters)
+ var pipingCalculation2 = new PipingCalculation(generalInputParameters, semiProbabilisticInputParameters)
{
Output = new TestPipingOutput()
};
@@ -320,7 +322,7 @@
// Setup
var treeViewControl = mocks.StrictMock();
var menuBuilder = new CustomItemsOnlyContextMenuBuilder();
- var pipingCalculation = new PipingCalculation(new GeneralPipingInput())
+ var pipingCalculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput())
{
Output = new TestPipingOutput()
};
@@ -436,7 +438,7 @@
var failureMechanism = new PipingFailureMechanism();
failureMechanism.CalculationsGroup.Children.Clear();
- failureMechanism.CalculationsGroup.Children.Add(new PipingCalculation(new GeneralPipingInput()));
+ failureMechanism.CalculationsGroup.Children.Add(new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput()));
var assessmentSection = mocks.Stub();
var failureMechanismContext = new PipingFailureMechanismContext(failureMechanism, assessmentSection);
Index: Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/PipingGuiPluginTest.cs
===================================================================
diff -u -r6a1df79cc36617a42d0016f9b7a9271020a2196e -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/PipingGuiPluginTest.cs (.../PipingGuiPluginTest.cs) (revision 6a1df79cc36617a42d0016f9b7a9271020a2196e)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/PipingGuiPluginTest.cs (.../PipingGuiPluginTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -62,20 +62,17 @@
{
// call
var mocks = new MockRepository();
- var assessmentSection = mocks.Stub();
mocks.ReplayAll();
PropertyInfo[] propertyInfos = guiPlugin.GetPropertyInfos().ToArray();
// assert
Assert.AreEqual(7, propertyInfos.Length);
- var pipingFailureMechanism = new PipingFailureMechanism();
- var pipingFailureMechanismContext = new PipingFailureMechanismContext(pipingFailureMechanism, assessmentSection);
var pipingFailureMechanismContextProperties = propertyInfos.Single(pi => pi.DataType == typeof(PipingFailureMechanismContext));
- Assert.AreEqual(typeof(GeneralPipingInputProperties), pipingFailureMechanismContextProperties.PropertyObjectType);
+ Assert.AreEqual(typeof(PipingFailureMechanismContextProperties), pipingFailureMechanismContextProperties.PropertyObjectType);
Assert.IsNull(pipingFailureMechanismContextProperties.AdditionalDataCheck);
- Assert.AreSame(pipingFailureMechanism.GeneralInput, pipingFailureMechanismContextProperties.GetObjectPropertiesData(pipingFailureMechanismContext));
+ Assert.IsNull(pipingFailureMechanismContextProperties.GetObjectPropertiesData);
Assert.IsNull(pipingFailureMechanismContextProperties.AfterCreate);
var pipingCalculationContextProperties = propertyInfos.Single(pi => pi.DataType == typeof(PipingCalculationContext));
Index: Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationActivityTest.cs
===================================================================
diff -u -r1c01ea681887e96b5b80fb7d23680a4eeac9bd50 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationActivityTest.cs (.../PipingCalculationActivityTest.cs) (revision 1c01ea681887e96b5b80fb7d23680a4eeac9bd50)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingCalculationActivityTest.cs (.../PipingCalculationActivityTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -20,7 +20,7 @@
public void ParameteredConstructor_ExpectedValues()
{
// Setup
- var calculation = new PipingCalculation(new GeneralPipingInput());
+ var calculation = new PipingCalculation(new GeneralPipingInput(), new SemiProbabilisticPipingInput());
// Call
var activity = new PipingCalculationActivity(calculation);
Index: Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingSemiProbabilisticCalculationServiceTest.cs
===================================================================
diff -u -r74e3dea657b90b371e265914bee337c76e509d93 -rde18e9d8a0324e9345f412eb6c1ffeed4f86f2fb
--- Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingSemiProbabilisticCalculationServiceTest.cs (.../PipingSemiProbabilisticCalculationServiceTest.cs) (revision 74e3dea657b90b371e265914bee337c76e509d93)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingSemiProbabilisticCalculationServiceTest.cs (.../PipingSemiProbabilisticCalculationServiceTest.cs) (revision de18e9d8a0324e9345f412eb6c1ffeed4f86f2fb)
@@ -1,4 +1,6 @@
-using NUnit.Framework;
+using System;
+using Core.Common.TestUtil;
+using NUnit.Framework;
using Ringtoets.Piping.Data;
namespace Ringtoets.Piping.Service.Test
@@ -150,17 +152,18 @@
}
[Test]
- public void Transform_CompleteInput_ReturnsPipingSemiProbabilisticOutputWithValues()
+ public void Calculate_CompleteInput_ReturnsPipingSemiProbabilisticOutputWithValues()
{
// Setup
- var generalInput = new GeneralPipingInput
+
+ var semiProbabilisticPipingInput = new SemiProbabilisticPipingInput
{
SectionLength = 6000,
Norm = 30000,
Contribution = 24
};
var pipingOutput = new PipingOutput(double.NaN, 1.2, double.NaN, 0.6, double.NaN, 0.9);
- var pipingCalculation = new PipingCalculation(generalInput)
+ var pipingCalculation = new PipingCalculation(new GeneralPipingInput(), semiProbabilisticPipingInput)
{
Output = pipingOutput
};
@@ -171,5 +174,19 @@
// Assert
Assert.AreEqual(1.134713444, pipingCalculation.SemiProbabilisticOutput.PipingFactorOfSafety, 1e-8);
}
+
+ [Test]
+ public void Calculate_MissingOutput_ThrowsArgumentNullException()
+ {
+ // Setup
+ var generalInput = new GeneralPipingInput();
+ var pipingCalculation = new PipingCalculation(generalInput, new SemiProbabilisticPipingInput());
+
+ // Call
+ TestDelegate test = () => PipingSemiProbabilisticCalculationService.Calculate(pipingCalculation);
+
+ // Assert
+ TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, "Cannot perform a semi-probabilistic calculation without output form the piping kernel.");
+ }
}
}
\ No newline at end of file