Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingData.cs =================================================================== diff -u -r300a33d9acf653458b834b296becbf9ae552de8e -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingData.cs (.../PipingData.cs) (revision 300a33d9acf653458b834b296becbf9ae552de8e) +++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingData.cs (.../PipingData.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -16,6 +16,8 @@ /// public PipingData() { + Name = "Piping"; + // Defaults as they have been defined in the DikesPiping Kernel's Technical Documentation of 07 Oct 15 BeddingAngle = 37.0; MeanDiameter70 = 2.08e-4; @@ -29,6 +31,11 @@ } /// + /// Gets or sets the name the user gave this this calculation object. + /// + public string Name { get; set; } + + /// /// Gets or sets the damping factor at the exit point. /// public double DampingFactorExit { get; set; } Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingCalculationInputsNodePresenter.cs =================================================================== diff -u -r300a33d9acf653458b834b296becbf9ae552de8e -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingCalculationInputsNodePresenter.cs (.../PipingCalculationInputsNodePresenter.cs) (revision 300a33d9acf653458b834b296becbf9ae552de8e) +++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingCalculationInputsNodePresenter.cs (.../PipingCalculationInputsNodePresenter.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -31,7 +31,7 @@ public void UpdateNode(ITreeNode parentNode, ITreeNode node, object nodeData) { - node.Text = Resources.PipingDataDisplayName; + node.Text = ((PipingCalculationInputs)nodeData).PipingData.Name; node.Image = Resources.PipingIcon; } @@ -46,17 +46,19 @@ public bool CanRenameNode(ITreeNode node) { - return false; + return true; } public bool CanRenameNodeTo(ITreeNode node, string newName) { - return false; + return true; } public void OnNodeRenamed(object nodeData, string newName) { - throw new InvalidOperationException(string.Format("Cannot rename tree node of type {0}.", GetType().Name)); + var pipingCalculationInputs = ((PipingCalculationInputs)nodeData); + pipingCalculationInputs.PipingData.Name = newName; + pipingCalculationInputs.PipingData.NotifyObservers(); } public void OnNodeChecked(ITreeNode node) {} Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs =================================================================== diff -u -r464b6d664be0b6c7cef0b141f40f51bcef2217ac -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 464b6d664be0b6c7cef0b141f40f51bcef2217ac) +++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -261,15 +261,6 @@ } /// - /// Looks up a localized string similar to Piping. - /// - public static string PipingDataDisplayName { - get { - return ResourceManager.GetString("PipingDataDisplayName", resourceCulture); - } - } - - /// /// Looks up a localized string similar to De x-coordinaat van het uittredepunt.. /// public static string PipingDataExitPointXCoordinateDescription { @@ -324,6 +315,24 @@ } /// + /// Looks up a localized string similar to Naam van de piping berekening.. + /// + public static string PipingDataNameDescription { + get { + return ResourceManager.GetString("PipingDataNameDescription", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Naam. + /// + public static string PipingDataNameDisplayName { + get { + return ResourceManager.GetString("PipingDataNameDisplayName", resourceCulture); + } + } + + /// /// Looks up a localized string similar to Freatische waterstand bij uittredepunt.. /// public static string PipingDataPhreaticLevelExitDescription { Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx =================================================================== diff -u -r464b6d664be0b6c7cef0b141f40f51bcef2217ac -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision 464b6d664be0b6c7cef0b141f40f51bcef2217ac) +++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -163,9 +163,6 @@ 70%-fraktiel van de korreldiameter in de bovenste zandlaag - - Piping - De x-coordinaat van het uittredepunt. @@ -388,4 +385,10 @@ ..\Resources\PlayAll.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + Naam van de piping berekening. + + + Naam + \ No newline at end of file Index: src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingCalculationInputsProperties.cs =================================================================== diff -u -r300a33d9acf653458b834b296becbf9ae552de8e -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingCalculationInputsProperties.cs (.../PipingCalculationInputsProperties.cs) (revision 300a33d9acf653458b834b296becbf9ae552de8e) +++ src/Plugins/Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingCalculationInputsProperties.cs (.../PipingCalculationInputsProperties.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -17,6 +17,22 @@ public class PipingCalculationInputsProperties : ObjectProperties { [ResourcesCategory(typeof(Resources), "Categories_General")] + [ResourcesDisplayName(typeof(Resources), "PipingDataNameDisplayName")] + [ResourcesDescription(typeof(Resources), "PipingDataNameDescription")] + public string Name + { + get + { + return data.PipingData.Name; + } + set + { + data.PipingData.Name = value; + data.PipingData.NotifyObservers(); + } + } + + [ResourcesCategory(typeof(Resources), "Categories_General")] [ResourcesDisplayName(typeof(Resources), "PipingDataWaterVolumetricWeightDisplayName")] [ResourcesDescription(typeof(Resources), "PipingDataWaterVolumetricWeightDescription")] public double WaterVolumetricWeight Index: src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingDataTest.cs =================================================================== diff -u -r300a33d9acf653458b834b296becbf9ae552de8e -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingDataTest.cs (.../PipingDataTest.cs) (revision 300a33d9acf653458b834b296becbf9ae552de8e) +++ src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingDataTest.cs (.../PipingDataTest.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -23,6 +23,8 @@ var defaultConstructed = new PipingData(); // Assert + Assert.AreEqual("Piping", defaultConstructed.Name); + Assert.AreEqual(0, defaultConstructed.CriticalHeaveGradient); Assert.AreEqual(0, defaultConstructed.UpliftModelFactor); Assert.AreEqual(0, defaultConstructed.PiezometricHeadExit); Index: src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingCalculationInputsNodePresenterTest.cs =================================================================== diff -u -r300a33d9acf653458b834b296becbf9ae552de8e -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingCalculationInputsNodePresenterTest.cs (.../PipingCalculationInputsNodePresenterTest.cs) (revision 300a33d9acf653458b834b296becbf9ae552de8e) +++ src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingCalculationInputsNodePresenterTest.cs (.../PipingCalculationInputsNodePresenterTest.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -8,10 +8,7 @@ using Rhino.Mocks; using Ringtoets.Piping.Data; - -using Ringtoets.Piping.Calculation.Test.Piping.Stub; using Ringtoets.Piping.Calculation.TestUtil; -using Ringtoets.Piping.Forms; using Ringtoets.Piping.Forms.NodePresenters; using Ringtoets.Piping.Forms.PresentationObjects; @@ -46,21 +43,25 @@ public void UpdateNode_WithData_InitializeNode() { // Setup - const string nodeName = "Piping"; + const string nodeName = ""; var mocks = new MockRepository(); var pipingNode = mocks.Stub(); mocks.ReplayAll(); var nodePresenter = new PipingCalculationInputsNodePresenter(); - var pipingData = new PipingData + var pipingCalculationInputs = new PipingCalculationInputs { - AssessmentLevel = 2.0 + PipingData = new PipingData + { + Name = nodeName, + AssessmentLevel = 2.0 + } }; // Call - nodePresenter.UpdateNode(null, pipingNode, pipingData); + nodePresenter.UpdateNode(null, pipingNode, pipingCalculationInputs); // Assert Assert.AreEqual(nodeName, pipingNode.Text); @@ -119,7 +120,7 @@ } [Test] - public void CanRenameNode_Always_ReturnFalse() + public void CanRenameNode_Always_ReturnTrue() { // Setup var mocks = new MockRepository(); @@ -132,12 +133,12 @@ var renameAllowed = nodePresenter.CanRenameNode(nodeMock); // Assert - Assert.IsFalse(renameAllowed); + Assert.IsTrue(renameAllowed); mocks.VerifyAll(); // Expect no calls on tree node } [Test] - public void CanRenameNodeTo_Always_ReturnFalse() + public void CanRenameNodeTo_Always_ReturnTrue() { // Setup var mocks = new MockRepository(); @@ -150,29 +151,38 @@ var renameAllowed = nodePresenter.CanRenameNodeTo(nodeMock, ""); // Assert - Assert.IsFalse(renameAllowed); + Assert.IsTrue(renameAllowed); mocks.ReplayAll(); // Expect no calls on tree node } - [Test] - public void OnNodeRenamed_Always_ThrowInvalidOperationException() + public void OnNodeRenamed_Always_SetNewNameToPipingData() { // Setup var mocks = new MockRepository(); - var nodeMock = mocks.StrictMock(); + var observerMock = mocks.StrictMock(); + observerMock.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); + var pipingData = new PipingData + { + Name = "" + }; + var pipingCalculationsInputs = new PipingCalculationInputs + { + PipingData = pipingData + }; + pipingCalculationsInputs.Attach(observerMock); + var nodePresenter = new PipingCalculationInputsNodePresenter(); // Call - TestDelegate call = () => { nodePresenter.OnNodeRenamed(nodeMock, ""); }; + const string newName = ""; + nodePresenter.OnNodeRenamed(pipingCalculationsInputs, newName); // Assert - var exception = Assert.Throws(call); - var expectedMessage = string.Format("Cannot rename tree node of type {0}.", nodePresenter.GetType().Name); - Assert.AreEqual(expectedMessage, exception.Message); - mocks.ReplayAll(); // Expect no calls on tree node + Assert.AreEqual(newName, pipingData.Name); + mocks.VerifyAll(); } [Test] Index: src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingCalculationInputsPropertiesTest.cs =================================================================== diff -u -r300a33d9acf653458b834b296becbf9ae552de8e -r308703c02f5602704483e204ad9a475d90eece69 --- src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingCalculationInputsPropertiesTest.cs (.../PipingCalculationInputsPropertiesTest.cs) (revision 300a33d9acf653458b834b296becbf9ae552de8e) +++ src/Plugins/Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingCalculationInputsPropertiesTest.cs (.../PipingCalculationInputsPropertiesTest.cs) (revision 308703c02f5602704483e204ad9a475d90eece69) @@ -28,9 +28,11 @@ public void GetProperties_WithData_ReturnExpectedValues() { // Setup + const string name = ""; var surfaceLine = new RingtoetsPipingSurfaceLine(); var pipingData = new PipingData { + Name = name, SurfaceLine = surfaceLine }; @@ -43,6 +45,7 @@ }; // Call & Assert + Assert.AreEqual(name, properties.Name); Assert.AreEqual(0, properties.CriticalHeaveGradient); Assert.AreEqual(0, properties.UpliftModelFactor); Assert.AreEqual(0, properties.PiezometricHeadExit);