Index: DamEngine/trunk/src/Deltares.DamEngine.IntegrationTests/IntegrationTests/OperationalPulauTekongTests.cs =================================================================== diff -u -r4000 -r4052 --- DamEngine/trunk/src/Deltares.DamEngine.IntegrationTests/IntegrationTests/OperationalPulauTekongTests.cs (.../OperationalPulauTekongTests.cs) (revision 4000) +++ DamEngine/trunk/src/Deltares.DamEngine.IntegrationTests/IntegrationTests/OperationalPulauTekongTests.cs (.../OperationalPulauTekongTests.cs) (revision 4052) @@ -27,99 +27,98 @@ using Deltares.DamEngine.TestHelpers; using NUnit.Framework; -namespace Deltares.DamEngine.IntegrationTests.IntegrationTests +namespace Deltares.DamEngine.IntegrationTests.IntegrationTests; + +/// +/// These tests were based on DamLiveIntegrationTest.Run_UsingTestFiles_HasExpectedResultsInOutputFile() +/// +[TestFixture] +class OperationalPulauTekongTests { - /// - /// These tests were based on DamLiveIntegrationTest.Run_UsingTestFiles_HasExpectedResultsInOutputFile() - /// - [TestFixture] - class OperationalPulauTekongTests - { - private const double tolerance = 0.0005; - private const double novalue = -999.0; - private const string stabilityOutsideFactor = "StabilityOutsideFactor"; + private const double tolerance = 0.0005; + private const double novalue = -999.0; + private const string stabilityOutsideFactor = "StabilityOutsideFactor"; - [Test] - [Ignore("")] - [Category(Categories.WorkInProgress)] - [TestCase(@"PulauTekong.InputFile.xml", 2.486106, 2.114159)] - [TestCase(@"PulauTekong.InputFile-NoValues.xml", novalue, novalue)] - public void Run_UsingTestFiles_HasExpectedResultsInOutputFile(string inputTestcaseFilename, double valueEntry1, double valueEntry2) + [Test] + [Ignore("")] + [Category(Categories.WorkInProgress)] + [TestCase(@"PulauTekong.InputFile.xml", 2.486106, 2.114159)] + [TestCase(@"PulauTekong.InputFile-NoValues.xml", novalue, novalue)] + public void Run_UsingTestFiles_HasExpectedResultsInOutputFile(string inputTestcaseFilename, double valueEntry1, double valueEntry2) + { + const string calcDir = "TestOperationalPulauTekong"; + const string workingDir = @"TestFiles\"; + const string baseTestDirectory = @".\Operational\PulauTekong\"; + if (Directory.Exists(calcDir)) { - const string calcDir = "TestOperationalPulauTekong"; - const string workingDir = @"TestFiles\"; - const string baseTestDirectory = @".\Operational\PulauTekong\"; - if (Directory.Exists(calcDir)) - { - Directory.Delete(calcDir, true); // delete previous results - } + 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 "Deltares.DamLive.Tests.PulauTekongTest" - string inputFileName = baseTestDirectory + inputTestcaseFilename; - const string outputFileName = baseTestDirectory + @"PulauTekong.OutputFile.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", baseTestDirectory + @"PulauTekong.geometries2D.0\"); - inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", baseTestDirectory + @"PulauTekong0.soilmaterials.mdb"); - var engineInterface = new EngineInterface(inputString); - Assert.IsNotNull(engineInterface.DamProjectData); - string outputString = engineInterface.Run(); - File.WriteAllText(outputFileName, outputString, Encoding.Unicode); - Assert.IsNotNull(outputString); - Output output = DamXmlSerialization.LoadOutputFromXmlString(outputString); + Directory.CreateDirectory(calcDir); + // Switch to TestFiles directory to check if DamLive can also run from another directory + Directory.SetCurrentDirectory(workingDir); + // Based on "Deltares.DamLive.Tests.PulauTekongTest" + string inputFileName = baseTestDirectory + inputTestcaseFilename; + const string outputFileName = baseTestDirectory + @"PulauTekong.OutputFile.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", baseTestDirectory + @"PulauTekong.geometries2D.0\"); + inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", baseTestDirectory + @"PulauTekong0.soilmaterials.mdb"); + var engineInterface = new EngineInterface(inputString); + Assert.IsNotNull(engineInterface.DamProjectData); + string outputString = engineInterface.Run(); + File.WriteAllText(outputFileName, outputString, Encoding.Unicode); + Assert.IsNotNull(outputString); + Output output = DamXmlSerialization.LoadOutputFromXmlString(outputString); - Assert.AreEqual(stabilityOutsideFactor, output.Results.OperationalOutputTimeSeries[0].ParameterId); - Assert.AreEqual(valueEntry1, output.Results.OperationalOutputTimeSeries[0].Entries.TimeSerieEntry[0].Value, tolerance); - Assert.AreEqual(stabilityOutsideFactor, output.Results.OperationalOutputTimeSeries[1].ParameterId); - Assert.AreEqual(valueEntry2, output.Results.OperationalOutputTimeSeries[1].Entries.TimeSerieEntry[0].Value, tolerance); - } + Assert.AreEqual(stabilityOutsideFactor, output.Results.OperationalOutputTimeSeries[0].ParameterId); + Assert.AreEqual(valueEntry1, output.Results.OperationalOutputTimeSeries[0].Entries.TimeSerieEntry[0].Value, tolerance); + Assert.AreEqual(stabilityOutsideFactor, output.Results.OperationalOutputTimeSeries[1].ParameterId); + Assert.AreEqual(valueEntry2, output.Results.OperationalOutputTimeSeries[1].Entries.TimeSerieEntry[0].Value, tolerance); + } - [Test, Category("MultiCore")] - // This test runs the same project as Run_UsingTestFiles_HasExpectedResultsInOutputFile - // except that it runs it with both single core and multi core. - // The output of both runs must be the same - public void CompareResultFromMultiCoreRunWithSingleCoreRun() - { - var calcDir = "TestOperationalPulauTekongSingleCore"; - var outputFileName = @"PulauTekongSingleCore.OutputFile.xml"; - Output output = RunTestProjectCores(calcDir, outputFileName, 1); - string outputSingleCore = DamXmlSerialization.SaveOutputAsXmlString(output); + [Test, Category("MultiCore")] + // This test runs the same project as Run_UsingTestFiles_HasExpectedResultsInOutputFile + // except that it runs it with both single core and multi core. + // The output of both runs must be the same + public void CompareResultFromMultiCoreRunWithSingleCoreRun() + { + var calcDir = "TestOperationalPulauTekongSingleCore"; + var outputFileName = @"PulauTekongSingleCore.OutputFile.xml"; + Output output = RunTestProjectCores(calcDir, outputFileName, 1); + string outputSingleCore = DamXmlSerialization.SaveOutputAsXmlString(output); - calcDir = "TestOperationalPulauTekongMultiCore"; - outputFileName = @"PulauTekongMultiCore.OutputFile.xml"; - output = RunTestProjectCores(calcDir, outputFileName, 4); - string outputMultiCore = DamXmlSerialization.SaveOutputAsXmlString(output); + calcDir = "TestOperationalPulauTekongMultiCore"; + outputFileName = @"PulauTekongMultiCore.OutputFile.xml"; + output = RunTestProjectCores(calcDir, outputFileName, 4); + string outputMultiCore = DamXmlSerialization.SaveOutputAsXmlString(output); - Assert.AreEqual(outputSingleCore, outputMultiCore); - } + Assert.AreEqual(outputSingleCore, outputMultiCore); + } - private Output RunTestProjectCores(string calcDir, string outputFileName, int coreCount) + private Output RunTestProjectCores(string calcDir, string outputFileName, int coreCount) + { + if (Directory.Exists(calcDir)) { - if (Directory.Exists(calcDir)) - { - Directory.Delete(calcDir, true); // delete previous results - } + Directory.Delete(calcDir, true); // delete previous results + } - Directory.CreateDirectory(calcDir); + Directory.CreateDirectory(calcDir); - const string baseTestDirectory = @".\TestFiles\Operational\PulauTekong\"; - string inputFileName = baseTestDirectory + @"PulauTekong.InputFile.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", baseTestDirectory + @"PulauTekong.geometries2D.0\"); - inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", baseTestDirectory + @"PulauTekong0.soilmaterials.mdb"); - inputString = XmlAdapter.ChangeValueInXml(inputString, "MaxCalculationCores", coreCount.ToString()); - var engineInterface = new EngineInterface(inputString); - Assert.IsNotNull(engineInterface.DamProjectData); - string outputString = engineInterface.Run(); - File.WriteAllText(outputFileName, outputString, Encoding.Unicode); - Assert.IsNotNull(outputString); - return DamXmlSerialization.LoadOutputFromXmlString(outputString); - } + const string baseTestDirectory = @".\TestFiles\Operational\PulauTekong\"; + string inputFileName = baseTestDirectory + @"PulauTekong.InputFile.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", baseTestDirectory + @"PulauTekong.geometries2D.0\"); + inputString = XmlAdapter.ChangeValueInXml(inputString, "SoilDatabaseName", baseTestDirectory + @"PulauTekong0.soilmaterials.mdb"); + inputString = XmlAdapter.ChangeValueInXml(inputString, "MaxCalculationCores", coreCount.ToString()); + var engineInterface = new EngineInterface(inputString); + Assert.IsNotNull(engineInterface.DamProjectData); + string outputString = engineInterface.Run(); + File.WriteAllText(outputFileName, outputString, Encoding.Unicode); + Assert.IsNotNull(outputString); + return DamXmlSerialization.LoadOutputFromXmlString(outputString); } } \ No newline at end of file