From 8c5b06ae95e1545d0734b9fc1d8de55f3d838c44 Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <quaritsch@ivt.tugraz.at> Date: Wed, 7 Dec 2022 14:08:13 +0100 Subject: [PATCH] extend mock data for testcase --- .../Simulation/LossMapRangeValidationTest.cs | 35 ++++++++++++++++--- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs index 3f1881fe6c..df317a5b45 100644 --- a/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs +++ b/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs @@ -35,11 +35,13 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.IO; using System.Linq; +using Moq; using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Models; using TUGraz.VectoCommon.Utils; using TUGraz.VectoCore.InputData.FileIO.JSON; +using TUGraz.VectoCore.InputData.Impl; using TUGraz.VectoCore.InputData.Reader.ComponentData; using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Models.Simulation.Data; @@ -82,6 +84,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation var gearboxData = CreateGearboxData(GearboxDirectLoss, GearboxIndirectLoss); var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, gearboxData.Gears.Count); var axleGearData = CreateAxleGearData(AxleGearLossMap); + var mockVehicleInputData = new Mock<IVehicleDeclarationInputData>(); var vehicleData = new VehicleData { DynamicTyreRadius = 0.85.SI<Meter>(), Loading = 0.SI<Kilogram>(), @@ -94,7 +97,8 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation TyreTestLoad = 50000.SI<Newton>(), Inertia = 10.SI<KilogramSquareMeter>() } - } + }, + InputData = mockVehicleInputData.Object, }; var runData = new VectoRunData { @@ -133,7 +137,23 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation var gearboxData = CreateGearboxData(GearboxLimited, GearboxLimited); var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, gearboxData.Gears.Count); var axleGearData = CreateAxleGearData(AxleGearLossMap); - var runData = new VectoRunData { GearboxData = gearboxData, EngineData = engineData, AxleGearData = axleGearData }; + var mockVehicleInputData = new Mock<IVehicleDeclarationInputData>(); + var vehicleData = new VehicleData { + DynamicTyreRadius = 0.85.SI<Meter>(), + Loading = 0.SI<Kilogram>(), + CurbMass = 2000.SI<Kilogram>(), + AxleData = + new List<Axle> { + new Axle { + TwinTyres = false, + AxleWeightShare = 1, + TyreTestLoad = 50000.SI<Newton>(), + Inertia = 10.SI<KilogramSquareMeter>() + } + }, + InputData = mockVehicleInputData.Object + }; + var runData = new VectoRunData { GearboxData = gearboxData, EngineData = engineData, AxleGearData = axleGearData, VehicleData = vehicleData}; var result = VectoRunData.ValidateRunData(runData, new ValidationContext(runData)); Assert.IsFalse(ValidationResult.Success == result); } @@ -146,6 +166,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation { var gearboxData = CreateGearboxData(GearboxDirectLoss, GearboxIndirectLoss); var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, gearboxData.Gears.Count); + var mockVehicleInputData = new Mock<IVehicleDeclarationInputData>(); var vehicleData = new VehicleData { DynamicTyreRadius = 0.85.SI<Meter>(), Loading = 0.SI<Kilogram>(), @@ -158,7 +179,8 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation TyreTestLoad = 50000.SI<Newton>(), Inertia = 10.SI<KilogramSquareMeter>() } - } + }, + InputData = mockVehicleInputData.Object }; var runData = new VectoRunData { GearboxData = gearboxData, @@ -198,6 +220,10 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation private static GearboxData CreateGearboxData(string directlossMap, string indirectLossMap) { var ratios = new[] { 14.93, 11.64, 9.02, 7.04, 5.64, 4.4, 3.39, 2.65, 2.05, 1.6, 1.28, 1.0 }; + var gearboxInput = new Mock<IGearboxDeclarationInputData>(); + var gears = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 } + .Select(x => new TransmissionInputData() { Gear = x }).Cast<ITransmissionInputData>().ToList(); + gearboxInput.Setup(g => g.Gears).Returns(gears); return new GearboxData { Gears = ratios.Select((ratio, i) => Tuple.Create((uint)i, @@ -208,7 +234,8 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation Ratio = ratio, ShiftPolygon = ShiftPolygonReader.ReadFromFile(ShiftPolygonFile) })) - .ToDictionary(k => k.Item1 + 1, v => v.Item2) + .ToDictionary(k => k.Item1 + 1, v => v.Item2), + InputData = gearboxInput.Object }; } -- GitLab