From 34f73ac83dfc68f5a55e3bbb78ba73c09e9028a0 Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Thu, 5 Dec 2019 16:13:30 +0100
Subject: [PATCH] remove confidential testcases, update testcases (error
 messages, expected values due to changes i model, ...)

---
 .../XMLDeclarationEngineDataProvider.cs       |  2 +-
 .../XMLEngineeringEngineDataProvider.cs       | 18 ++++++++
 .../FileIO/SimulationDataReaderTest.cs        | 24 +++++-----
 .../Models/Simulation/ShiftStrategyV2Test.cs  | 19 --------
 .../SimulationComponent/RetarderTest.cs       |  2 +-
 .../GearshiftLinesVoithTest.cs                |  7 +++
 .../VectoCoreTest/Models/WHRMapReaderTest.cs  | 45 ++++++++++---------
 7 files changed, 62 insertions(+), 55 deletions(-)

diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs
index d1f7ae2fa7..5e901cc626 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs
@@ -332,7 +332,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 					.Cast<XmlNode>().All(x => x.Attributes?[fcMapAttr] != null);
 				if (correctionFactorNodes.Count > 0) {
 					if (!whrPwrNodes) {
-						throw new VectoXMLException("WHR correction factors provided but no {0} power defined.", fcMapAttr);
+						throw new VectoXMLException("WHR correction factors provided but {0} missing for some entries.", fcMapAttr);
 
 					}
 					//return new XMLDeclarationWHRData();
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringEngineDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringEngineDataProvider.cs
index 83cfe8cafe..b92c0ad5f5 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringEngineDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringEngineDataProvider.cs
@@ -315,6 +315,24 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering.DataProvider
 			
 		}
 
+		public override WHRType WHRType
+		{
+			get {
+				var retVal = WHRType.None;
+				if (XmlConvert.ToBoolean(GetString("MechanicalOutputICE"))) {
+					retVal |= WHRType.MechanicalOutputICE;
+				}
+				if (XmlConvert.ToBoolean(GetString("MechanicalOutputDrivetrain"))) {
+					retVal |= WHRType.MechanicalOutputDrivetrain;
+				}
+				if (XmlConvert.ToBoolean(GetString("ElectricalOutput"))) {
+					retVal |= WHRType.ElectricalOutput;
+				}
+
+				return retVal;
+			}
+		}
+
 		#endregion
 
 
diff --git a/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs b/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs
index db13be0186..633eb54093 100644
--- a/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs
+++ b/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs
@@ -50,14 +50,14 @@ namespace TUGraz.VectoCore.Tests.FileIO
 		protected const string DeclarationJob = @"TestData\Jobs\12t Delivery Truck.vecto";
 		protected const double Tolerance = 0.0001;
 
-        [OneTimeSetUp]
-        public void RunBeforeAnyTests()
-        {
-            Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
-        }
+		[OneTimeSetUp]
+		public void RunBeforeAnyTests()
+		{
+			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
+		}
 
 		[Category("LongRunning")]
-        [TestCase]
+		[TestCase]
 		public void ReadDeclarationJobFile()
 		{
 			var dataProvider = JSONInputDataFactory.ReadJsonJob(DeclarationJob);
@@ -99,8 +99,8 @@ namespace TUGraz.VectoCore.Tests.FileIO
 
 			Assert.AreEqual(3.7890, runData.EngineData.Inertia.Value(), 1e-6);
 
-			var downshiftSpeeds = new[] { 660, 660, 1679.9982 };
-			var downshiftTorque = new[] { -163.9, 257.9742, 988.9 };
+			var downshiftSpeeds = new[] { 660, 660, 800, 1000, 1087.625, 1087.625};
+			var downshiftTorque = new[] { -163.9, 623.966, 725.102, 848.0332, 872.2098, 988.9 };
 
 			Assert.AreEqual(downshiftSpeeds.Length, runData.GearboxData.Gears[2].ShiftPolygon.Downshift.Count);
 			for (var i = 0; i < downshiftSpeeds.Length; i++) {
@@ -110,11 +110,11 @@ namespace TUGraz.VectoCore.Tests.FileIO
 					"i: " + i);
 			}
 
-			var upshiftSpeed = new[] { 1889.6633, 1889.6633, 606.64575 / Constants.RPMToRad };
-			var upshiftTorque = new[] { -163.9, 245.31958, 988.9 };
+			var upshiftSpeed = new[] {2318.28077, 2318.28077 };
+			var upshiftTorque = new[] { -163.9, 988.9 };
 
-			Assert.AreEqual(upshiftSpeed.Length, runData.GearboxData.Gears[2].ShiftPolygon.Downshift.Count);
-			for (var i = 0; i < downshiftSpeeds.Length; i++) {
+			Assert.AreEqual(upshiftSpeed.Length, runData.GearboxData.Gears[2].ShiftPolygon.Upshift.Count);
+			for (var i = 0; i < upshiftSpeed.Length; i++) {
 				Assert.AreEqual(upshiftSpeed[i].RPMtoRad().Value(),
 					runData.GearboxData.Gears[1].ShiftPolygon.Upshift[i].AngularSpeed.Value(), Tolerance);
 				Assert.AreEqual(upshiftTorque[i], runData.GearboxData.Gears[1].ShiftPolygon.Upshift[i].Torque.Value(), Tolerance);
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/ShiftStrategyV2Test.cs b/VectoCore/VectoCoreTest/Models/Simulation/ShiftStrategyV2Test.cs
index 7d86c1a0e7..d0181591a1 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/ShiftStrategyV2Test.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/ShiftStrategyV2Test.cs
@@ -317,25 +317,6 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 
-		[TestCase(@"J:\TE-Em\Projekte\I_2017_24_VECTO_Erweiterungen_2018ff\Arbeitsordner\GearshiftModel\AMT\Overdrive\Scania\FC based DECL\Scania w overdrive transm.vecto", 1)]
-		public void RunDeclaration(string jobName, int runIdx)
-		{
-			RunJob_DeclSingle(jobName, runIdx);
-		}
-
-
-		[TestCase(@"E:\QUAM\Workspace\VECTO_DEV_quam\VectoCore\VectoCoreTest\TestData\Integration\ShiftStrategyV2\Allison_FC-based_AT_CONFIDENTIAL\WDB96702410158849.vecto", 5)]
-		public void RunDeclarationAllisonFCShift(string jobName, int runIdx)
-		{
-			RunJob_DeclSingle(jobName, runIdx);
-		}
-
-		[TestCase(@"E:\QUAM\Workspace\VECTO_DEV_quam\VectoCore\VectoCoreTest\TestData\Integration\ShiftStrategyV2\Allison_Voith_AT_CONFIDENTIAL\WDB96702410158849.vecto", 5)]
-		public void RunDeclarationAllisonVoithhift(string jobName, int runIdx)
-		{
-			RunJob_Engineering(jobName);
-		}
-
 		public void RunJob_Engineering(string jobName)
 		{
 			var relativeJobPath = jobName;
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs
index 151aa3f7e7..e2a5d7fccd 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs
@@ -156,7 +156,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			outPort.Initialize(50.SI<NewtonMeter>(), 2550.RPMtoRad());
 			outPort.Request(0.SI<Second>(), 0.SI<Second>(), 50.SI<NewtonMeter>(), 2550.RPMtoRad());
 			AssertHelper.Exception<VectoException>(() => retarder.CommitSimulationStep(new MockModalDataContainer()),
-				"Retarder LossMap data was extrapolated in Declaration mode: range for loss map is not sufficient: n:2550 (min:0, max:2300), ratio:2");
+				"Retarder LossMap data was extrapolated in Declaration mode: range for loss map is not sufficient: n:5100 (min:0, max:2300), ratio:2");
 		}
 
 		[TestCase]
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearshiftLinesVoithTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearshiftLinesVoithTest.cs
index b39d1b4614..eae9458ffc 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearshiftLinesVoithTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearshiftLinesVoithTest.cs
@@ -9,6 +9,7 @@ using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Engine;
+using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
 using TUGraz.VectoCore.Models.SimulationComponent.Impl;
 using TUGraz.VectoCore.Utils;
 
@@ -123,6 +124,12 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 				GearshiftParameters = new ShiftStrategyParameters() {
 					GearshiftLines = data,
 					LoadstageThresholds = loadStageThresoldsUp.Zip(loadStageThresoldsDown, Tuple.Create)
+				},
+				GearboxData = new GearboxData() {
+					Gears = new Dictionary<uint, GearData>() {
+						{1, new GearData() },
+						{2,new GearData() }
+					}
 				}
 			};
 			return runData;
diff --git a/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs b/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs
index 6fa6e5e056..c7056cb615 100644
--- a/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs
+++ b/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs
@@ -127,9 +127,10 @@ namespace TUGraz.VectoCore.Tests.Models
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			var runs = dao.NextRun().ToArray();
-
-			Assert.IsTrue(runs.All(x => x.EngineData.ElectricalWHR == null));
+			AssertHelper.Exception<VectoXMLException>(
+				() => {
+					var runs = dao.NextRun().ToArray();
+				}, "WHR electric power provided but no correction factors found.");
 		}
 
 		[TestCase()]
@@ -150,9 +151,10 @@ namespace TUGraz.VectoCore.Tests.Models
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			var runs = dao.NextRun().ToArray();
-
-			Assert.IsTrue(runs.All(x => x.EngineData.ElectricalWHR == null));
+			AssertHelper.Exception<VectoXMLException>(
+				() => {
+					var runs = dao.NextRun().ToArray();
+				}, "WHR correction factors provided but electricPower missing for some entries.");
 		}
 
 		[TestCase()]
@@ -174,10 +176,10 @@ namespace TUGraz.VectoCore.Tests.Models
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			AssertHelper.Exception<VectoException>(
+			AssertHelper.Exception<VectoXMLException>(
 				() => {
 					var runs = dao.NextRun().ToArray();
-				}, "WHRData has to be provided for every entry in the FC-Map! n: 560.00, T: 400.00");
+				}, "WHR correction factors provided but electricPower missing for some entries.");
 		}
 
 		[TestCase()]
@@ -209,10 +211,9 @@ namespace TUGraz.VectoCore.Tests.Models
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			AssertHelper.Exception<VectoException>(
-				() => {
-					var runs = dao.NextRun().ToArray();
-				}, "WHRData (correction factors) can only be defined for one fuel!");
+			var runs = dao.NextRun().ToArray();
+			
+			Assert.IsTrue(runs.All(x => x.EngineData.ElectricalWHR?.WHRMap != null));
 		}
 
 		[TestCase()]
@@ -260,10 +261,10 @@ namespace TUGraz.VectoCore.Tests.Models
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			AssertHelper.Exception<VectoException>(
+			AssertHelper.Exception<VectoXMLException>(
 				() => {
 					var runs = dao.NextRun().ToArray();
-				}, "Correction Factors and WHR-Map have to be defined for the same fuel!");
+				}, "WHR correction factors provided but electricPower missing for some entries.");
 		}
 
 		[TestCase()]
@@ -285,10 +286,10 @@ namespace TUGraz.VectoCore.Tests.Models
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			AssertHelper.Exception<VectoException>(
+			AssertHelper.Exception<VectoXMLException>(
 				() => {
 					var runs = dao.NextRun().ToArray();
-				}, "WHRData has to be provided for every entry in the FC-Map! n: 560.00, T: 400.00");
+				}, "WHR correction factors provided but electricPower missing for some entries.");
 		}
 
 		[TestCase()]
@@ -306,9 +307,9 @@ namespace TUGraz.VectoCore.Tests.Models
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			var runs = dao.NextRun().ToArray();
-
-			Assert.IsTrue(runs.All(x => x.EngineData.ElectricalWHR == null));
+			//var runs = dao.NextRun().ToArray();
+			AssertHelper.Exception<VectoXMLException>(() => { var tmp = dao.NextRun().ToArray(); });
+			
 		}
 
 		[TestCase()]
@@ -329,9 +330,9 @@ namespace TUGraz.VectoCore.Tests.Models
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var inputDataProvider = xmlInputReader.CreateDeclaration(modified);
 			var dao = new DeclarationModeVectoRunDataFactory(inputDataProvider, new NullDeclarationReport());
-			var runs = dao.NextRun().ToArray();
-
-			Assert.IsTrue(runs.All(x => x.EngineData.ElectricalWHR == null));
+			//var runs = dao.NextRun().ToArray();
+			//Assert.IsTrue(runs.All(x => x.EngineData.ElectricalWHR == null));
+			AssertHelper.Exception<VectoXMLException>(() => { var tmp = dao.NextRun().ToArray(); });
 		}
 
 
-- 
GitLab