diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs index 5778ab048765415f4a40e5ffc80965082e801115..3bc2b7ce19b77b193425a9f2843ce70013765dbd 100644 --- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs +++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs @@ -136,7 +136,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON protected IPTOTransmissionInputData PTOTransmission; private readonly string _jobname; - private IAirdragEngineeringInputData AirdragData; + protected internal IAirdragEngineeringInputData AirdragData; public JSONInputDataV2(JObject data, string filename, bool tolerateMissing = false) : base(data, filename, tolerateMissing) @@ -329,7 +329,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON get { return PTOTransmission; } } - public XElement XMLHash { get { return null; } } + public XElement XMLHash + { + get { return null; } + } IAuxiliariesDeclarationInputData IDeclarationInputDataProvider.AuxiliaryInputData() { diff --git a/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs new file mode 100644 index 0000000000000000000000000000000000000000..c3169c9b5179bc482b17eb3318cb637fdfd40617 --- /dev/null +++ b/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs @@ -0,0 +1,59 @@ +using System.Linq; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using TUGraz.VectoCommon.InputData; +using TUGraz.VectoCore.InputData.FileIO.JSON; +using TUGraz.VectoCore.InputData.Reader.Impl; +using TUGraz.VectoCore.Tests.Models.Declaration.DataAdapter; + +namespace TUGraz.VectoCore.Tests.Models.Declaration +{ + [TestClass] + public class AirdragDefaultValuesTest + { + [TestMethod] + public void TestClass2() + { + var file = @"TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2\Class2_RigidTruck_DECL.vecto"; + var inputData = (JSONInputDataV3)JSONInputDataFactory.ReadJsonJob(file); + inputData.AirdragData = null; // force use of standard values + + var dataReader = new DeclarationModeVectoRunDataFactory(inputData, null); + var runData = dataReader.NextRun().ToArray(); + var runDataOrig = DeclarationAdapterTestHelper.CreateVectoRunData(file); + + Assert.AreEqual(4.83, runDataOrig[0].AirdragData.DeclaredAirdragArea.Value()); + + Assert.AreEqual(7.2, runData[0].AirdragData.DeclaredAirdragArea.Value()); + } + + [TestMethod] + public void TestClass5() + { + var file = @"TestData\Integration\DeclarationMode\Class5_Tractor_4x2\Class5_Tractor_DECL.vecto"; + var inputData = (JSONInputDataV3)JSONInputDataFactory.ReadJsonJob(file); + inputData.AirdragData = null; // force use of standard values + + var dataReader = new DeclarationModeVectoRunDataFactory(inputData, null); + var runData = dataReader.NextRun().ToArray(); + var runDataOrig = DeclarationAdapterTestHelper.CreateVectoRunData(file); + + Assert.AreEqual(5.3, runDataOrig[0].AirdragData.DeclaredAirdragArea.Value()); + Assert.AreEqual(8.7, runData[0].AirdragData.DeclaredAirdragArea.Value()); + } + + [TestMethod] + public void TestClass9() + { + var file = @"TestData\Integration\DeclarationMode\Class9_RigidTruck_6x2\Class9_RigidTruck_DECL.vecto"; + var inputData = (JSONInputDataV3)JSONInputDataFactory.ReadJsonJob(file); + inputData.AirdragData = null; // force use of standard values + + var dataReader = new DeclarationModeVectoRunDataFactory(inputData, null); + var runData = dataReader.NextRun().ToArray(); + var runDataOrig = DeclarationAdapterTestHelper.CreateVectoRunData(file); + + Assert.AreEqual(5.2, runDataOrig[0].AirdragData.DeclaredAirdragArea.Value()); + Assert.AreEqual(8.5, runData[0].AirdragData.DeclaredAirdragArea.Value()); + } + } +} \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/VectoCoreTest.csproj b/VectoCore/VectoCoreTest/VectoCoreTest.csproj index ec72bf8be2432ecd2dfc4d474f579189f5efbf1d..444be981ad5b6f9858ec0db91d584d26669fe3a8 100644 --- a/VectoCore/VectoCoreTest/VectoCoreTest.csproj +++ b/VectoCore/VectoCoreTest/VectoCoreTest.csproj @@ -95,6 +95,7 @@ </Compile> <Compile Include="Integration\ShiftStrategy\ShiftStrategyTest.cs" /> <Compile Include="Integration\TorqueLimitsTest.cs" /> + <Compile Include="Models\Declaration\AirdragDefaultValuesTest.cs" /> <Compile Include="Models\Declaration\DataAdapter\DeclarationAdapterTestHelper.cs" /> <Compile Include="Models\Declaration\DataAdapter\DeclarationDataAdapterTest_Class5.cs" /> <Compile Include="Models\Declaration\DataAdapter\DeclarationDataAdapterTest_Class2.cs" />