Index: DamEngine/trunk/src/Deltares.DamEngine.Data/General/FailureMechanismParametersMStab.cs =================================================================== diff -u -r1219 -r1726 --- DamEngine/trunk/src/Deltares.DamEngine.Data/General/FailureMechanismParametersMStab.cs (.../FailureMechanismParametersMStab.cs) (revision 1219) +++ DamEngine/trunk/src/Deltares.DamEngine.Data/General/FailureMechanismParametersMStab.cs (.../FailureMechanismParametersMStab.cs) (revision 1726) @@ -19,7 +19,7 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. -using Deltares.DamEngine.Data.General.PlLines; +using System.IO; using Deltares.DamEngine.Data.Geotechnics; using Deltares.DamEngine.Data.Standard; using Deltares.DamEngine.Data.Standard.Validation; @@ -28,15 +28,18 @@ { public class FailureMechanismParametersMStab : IAssignable, ICloneable { - private const string dGeoStabilityExePath = @".\DGeoStability.exe"; + private const string dGeoStabilityExeName = @"DGeoStability.exe"; + private readonly string dGeoStabilityExePath; /// - /// Additinal specifications/settings of calculation using MStab + /// Additional specifications/settings of calculation using MStab /// public FailureMechanismParametersMStab() { this.MStabParameters = new MStabParameters(); this.IsStabilityCheckOnUplift = false; + // Make sure that D-Geo Stability path points to the D-Geo Stability version that is located in the application map + dGeoStabilityExePath = Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), dGeoStabilityExeName); } /// Index: DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/OperationalGrebbedijkTests.cs =================================================================== diff -u -r1673 -r1726 --- DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/OperationalGrebbedijkTests.cs (.../OperationalGrebbedijkTests.cs) (revision 1673) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface.Tests/OperationalGrebbedijkTests.cs (.../OperationalGrebbedijkTests.cs) (revision 1726) @@ -39,21 +39,24 @@ public void Run_UsingTestFiles_HasExpectedResultsInOutputFile() { const string calcDir = "TestOperationalGrebbedijk"; + const string workingDir = @"TestFiles\"; + const string baseTestDirectory = @".\"; if (Directory.Exists(calcDir)) { Directory.Delete(calcDir, true); // delete previous results } Directory.CreateDirectory(calcDir); - + // Switch to TestFiles directory to check if DamLive can also run from another directory + Directory.SetCurrentDirectory(workingDir); // Based on "DamLive\trunk\src\Deltares.DamLive.Tests\TestData\DamLive\Set2\\output.damx" - const string inputFileName = @"TestFiles\GrebbedijkStability.xml"; - const string outputFileName = @"TestFiles\GrebbedijkStability.output.xml"; + const string inputFileName = baseTestDirectory + @"GrebbedijkStability.xml"; + const string outputFileName = baseTestDirectory + @"GrebbedijkStability.output.xml"; string inputString = File.ReadAllText(inputFileName); 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\Operational\Grebbedijk\input.Geometries\"); - inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", @"TestFiles\Operational\Grebbedijk\input0.soilmaterials.mdb"); + inputString = XmlAdapter.ChangeValueInXml(inputString, "MapForSoilgeometries2D", baseTestDirectory + @"Operational\Grebbedijk\input.Geometries\"); + inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", baseTestDirectory + @"Operational\Grebbedijk\input0.soilmaterials.mdb"); EngineInterface engineInterface = new EngineInterface(inputString); Assert.IsNotNull(engineInterface.DamProjectData); string outputString = engineInterface.Run();