Index: DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/XmlAdapter.cs
===================================================================
diff -u
--- DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/XmlAdapter.cs (revision 0)
+++ DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/XmlAdapter.cs (revision 1135)
@@ -0,0 +1,56 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of the Dam Engine.
+//
+// The Dam Engine is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+
+namespace Deltares.DamEngine.TestHelpers
+{
+ ///
+ /// Helper class for adapting xml in tests
+ ///
+ public class XmlAdapter
+ {
+ ///
+ /// Changes the value in XML.
+ ///
+ /// The input.
+ /// The key.
+ /// The value.
+ ///
+ public static string ChangeValueInXml(string input, string key, string value)
+ {
+ string result = input;
+ string searchString = key + "=\"";
+ var startIndex = input.IndexOf(searchString, StringComparison.Ordinal);
+ var length = searchString.Length;
+ if (startIndex != -1)
+ {
+ // find next double quote
+ var endIndex = input.Substring(startIndex + length).IndexOf("\"", StringComparison.Ordinal);
+ string dirString = input.Substring(startIndex + length, endIndex);
+ string pattern = searchString + dirString;
+ string replacement = searchString + value;
+ result = input.Replace(pattern, replacement);
+ }
+ return result;
+ }
+ }
+}
Index: DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Deltares.DamEngine.TestHelpers.csproj
===================================================================
diff -u -r1011 -r1135
--- DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Deltares.DamEngine.TestHelpers.csproj (.../Deltares.DamEngine.TestHelpers.csproj) (revision 1011)
+++ DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/Deltares.DamEngine.TestHelpers.csproj (.../Deltares.DamEngine.TestHelpers.csproj) (revision 1135)
@@ -43,6 +43,7 @@
+
Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/MacroStabilityOutwardsTests.cs
===================================================================
diff -u
--- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/MacroStabilityOutwardsTests.cs (revision 0)
+++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/MacroStabilityOutwardsTests.cs (revision 1135)
@@ -0,0 +1,109 @@
+// Copyright (C) Stichting Deltares 2018. All rights reserved.
+//
+// This file is part of the Dam Engine.
+//
+// The Dam Engine is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System.IO;
+using Deltares.DamEngine.Data.General;
+using Deltares.DamEngine.Data.Standard.Calculation;
+using Deltares.DamEngine.Io;
+using Deltares.DamEngine.TestHelpers;
+using NUnit.Framework;
+
+namespace Deltares.DamEngine.Interface.Tests
+{
+ [TestFixture]
+ public class MacroStabilityOutwardsTests
+ {
+
+ private const double tolerance = 0.0005;
+
+ [Test]
+ public void TestRunMacroStabilityTutorialDesignBishop()
+ {
+ // Expected results are determined by running dam\dam clients\DamUI\trunk\data\DamEngineTestProjects\DAM Tutorial Design
+ // with Dam Classic rev.833
+ const string calcDir = "TestOutStabBishop";
+ if (Directory.Exists(calcDir))
+ {
+ Directory.Delete(calcDir, true); // delete previous results
+ }
+
+ Directory.CreateDirectory(calcDir);
+
+
+ const string fileName = @"TestFiles\MacroStabilityTutorialDesignInputFile.xml";
+ string inputString = File.ReadAllText(fileName);
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
+ EngineInterface engineInterface = new EngineInterface(inputString);
+ Assert.IsNotNull(engineInterface.DamProjectData);
+ engineInterface.DamProjectData.DamProjectCalculationSpecification.CurrentSpecification.StabilityKernelType = StabilityKernelType.DamClassic;
+ engineInterface.DamProjectData.DamProjectCalculationSpecification.CurrentSpecification.StabilityModelType = MStabModelType.Bishop;
+ engineInterface.DamProjectData.DamProjectCalculationSpecification.CurrentSpecification.FailureMechanismParametersMStab.MStabParameters.GridPosition = MStabGridPosition.Left;
+ engineInterface.DamProjectData.DamProjectCalculationSpecification.CurrentSpecification.FailureMechanismSystemType = FailureMechanismSystemType.StabilityOutside;
+ string outputString = engineInterface.Run();
+
+ Assert.IsNotNull(outputString);
+ var output = DamXmlSerialization.LoadOutputFromXmlString(outputString);
+ Assert.AreEqual(0.698, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.SafetyFactor, tolerance);
+ // Zone1SafetyFactor=1.282
+ Assert.AreEqual(0.698, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.Zone1SafetyFactor, tolerance);
+
+ // Zone1EntryPointX Local =38.818 Global=47.238
+ Assert.AreEqual(30.684, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.Zone1EntryPointX, tolerance);
+ // Zone1ExitPointX Local=64.262 Global=72.682
+ Assert.AreEqual(13.532, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.Zone1ExitPointX, tolerance);
+
+ // Zone2SafetyFactor null, is set to default reading from output.xml
+ Assert.AreEqual(0, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.Zone2SafetyFactor, tolerance);
+ // Zone2EntryPointX null, is set to default reading from output.xml
+ Assert.AreEqual(0, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.Zone2EntryPointX, tolerance);
+ // Zone2ExitPointX null, is set to default reading from output.xml
+ Assert.AreEqual(0, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.Zone2ExitPointX, tolerance);
+
+ // NumberOfIterations=0
+ Assert.AreEqual(0, output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.NumberOfIterations);
+ // ResultMessage ""
+ Assert.AreEqual("", output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.ResultMessage);
+
+ // Check that a line is specified
+ Assert.IsNotNull(output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.RedesignedSurfaceLine);
+
+ // Profile name = DWP_1.sti
+ Assert.AreEqual("DWP_1.sti", output.Results.CalculationResults.DesignResults[0].ProfileName);
+
+ // Uplift
+ var upliftSituation = output.Results.CalculationResults.DesignResults[0].StabilityDesignResults.UpliftSituation;
+ Assert.IsNotNull(upliftSituation);
+ Assert.AreEqual(true, upliftSituation.IsUplift);
+ Assert.AreEqual(1.141, upliftSituation.Pl3MinUplift, tolerance);
+ Assert.AreEqual(4.4, upliftSituation.Pl3HeadAdjusted, tolerance);
+ Assert.AreEqual(60.64, upliftSituation.Pl3LocationXMinUplift, tolerance);
+ Assert.AreEqual(0.0, upliftSituation.Pl4MinUplift, tolerance);
+ Assert.AreEqual(0.0, upliftSituation.Pl4HeadAdjusted, tolerance);
+ Assert.AreEqual(0.0, upliftSituation.Pl4LocationXMinUplift, tolerance);
+
+ // Calculation Result
+ Assert.AreEqual(CalculationResult.Succeeded, ConversionHelper.ConvertToCalculationResult(output.Results.CalculationResults.DesignResults[0].CalculationResult));
+ }
+ }
+}
Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/Deltares.DamEngine.Interface.Tests.csproj
===================================================================
diff -u -r1129 -r1135
--- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/Deltares.DamEngine.Interface.Tests.csproj (.../Deltares.DamEngine.Interface.Tests.csproj) (revision 1129)
+++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/Deltares.DamEngine.Interface.Tests.csproj (.../Deltares.DamEngine.Interface.Tests.csproj) (revision 1135)
@@ -46,6 +46,7 @@
+
Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/MacroStabilityTests.cs
===================================================================
diff -u -r1134 -r1135
--- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/MacroStabilityTests.cs (.../MacroStabilityTests.cs) (revision 1134)
+++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/MacroStabilityTests.cs (.../MacroStabilityTests.cs) (revision 1135)
@@ -24,6 +24,7 @@
using Deltares.DamEngine.Data.Standard.Calculation;
using Deltares.DamEngine.Io;
using Deltares.DamEngine.Io.XmlInput;
+using Deltares.DamEngine.TestHelpers;
using NUnit.Framework;
namespace Deltares.DamEngine.Interface.Tests
@@ -49,10 +50,10 @@
const string fileName = @"TestFiles\MacroStabilityTutorialDesignInputFile.xml";
string inputString = File.ReadAllText(fileName);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -115,10 +116,10 @@
const string fileName = @"TestFiles\MacroStabilityTutorialDesignInputFile.xml";
string inputString = File.ReadAllText(fileName);
inputString = ChangeInputModel(inputString, InputStabilityModelType.UpliftVan);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -181,10 +182,10 @@
const string fileName = @"TestFiles\MacroStabilityTutorialDesignInputFile.xml";
string inputString = File.ReadAllText(fileName);
inputString = ChangeInputModel(inputString, InputStabilityModelType.BishopUpliftVan);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -225,10 +226,10 @@
const string fileName = @"TestFiles\MacroStabilityTutorialDesignInputFile13.xml";
string inputString = File.ReadAllText(fileName);
inputString = ChangeInputModel(inputString, InputStabilityModelType.BishopUpliftVan);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -269,10 +270,10 @@
const string fileName = @"TestFiles\MacroStabilityTutorialDesignInputFile18.xml";
string inputString = File.ReadAllText(fileName);
inputString = ChangeInputModel(inputString, InputStabilityModelType.BishopUpliftVan);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DAM Tutorial Design.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DAM Tutorial Design0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -319,10 +320,10 @@
const string fileName = @"TestFiles\DeltaDijkZoneringInwards.xml";
string inputString = File.ReadAllText(fileName);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -392,10 +393,10 @@
const string fileName = @"TestFiles\DeltaDijkZoneringInwardsZone2.xml";
string inputString = File.ReadAllText(fileName);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -448,10 +449,10 @@
const string fileName = @"TestFiles\DeltaDijkZoneringInwards.xml";
string inputString = File.ReadAllText(fileName);
inputString = ChangeInputModel(inputString, InputStabilityModelType.UpliftVan);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -518,10 +519,10 @@
const string fileName = @"TestFiles\Invoer10.xml";
string inputString = File.ReadAllText(fileName);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\ZoneType.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\ZoneType0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\ZoneType.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\ZoneType0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -567,10 +568,10 @@
const string fileName = @"TestFiles\ErrorInDGeoStabilityCalculation.xml";
string inputString = File.ReadAllText(fileName);
inputString = ChangeInputModel(inputString, InputStabilityModelType.UpliftVan);
- inputString = ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
- inputString = ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
- inputString = ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "ProjectPath", ""); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "CalculationMap", calcDir); // Current directory will be used
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", @"TestFiles\DeltaDijk normal.geometries2D.0\");
+ inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\DeltaDijk normal0.soilmaterials.mdb");
EngineInterface engineInterface = new EngineInterface(inputString);
Assert.IsNotNull(engineInterface.DamProjectData);
@@ -692,23 +693,7 @@
return result;
}
- public string ChangeValueInXml(string input, string key, string value)
- {
- string result = input;
- string searchString = key + "=\"";
- var startIndex = input.IndexOf(searchString);
- var length = searchString.Length;
- if (startIndex != -1)
- {
- // find next double quote
- var endIndex = input.Substring(startIndex + length).IndexOf("\"");
- string dirString = input.Substring(startIndex + length, endIndex);
- string pattern = searchString + dirString;
- string replacement = searchString + value;
- result = input.Replace(pattern, replacement);
- }
- return result;
- }
+
}
}