diff --git a/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs b/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs index 2e5b23d20b8cdd9b2c0a1ed552ec28c301b440b3..c3e4b6ddabf953f003a8779319f63ff441b4c40d 100644 --- a/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs +++ b/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs @@ -29,6 +29,41 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns public const string AccelerationFile = @"TestData\Components\Coach.vacc"; + + [TestMethod] + public void TestWheelsAndEngineInitialize() + { + var engineData = EngineeringModeSimulationDataReader.CreateEngineDataFromFile(EngineFile); + + var vehicleData = CreateVehicleData(50000.SI<Kilogram>()); + + var driverData = CreateDriverData(); + + var modalWriter = new ModalDataWriter("Coach_MinimalPowertrainOverload.vmod", false); //new TestModalDataWriter(); + var sumWriter = new TestSumWriter(); + var vehicleContainer = new VehicleContainer(modalWriter, sumWriter); + + var driver = new Driver(vehicleContainer, driverData); + dynamic tmp = AddComponent(driver, new Vehicle(vehicleContainer, vehicleData)); + tmp = AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius)); + tmp = AddComponent(tmp, new Clutch(vehicleContainer, engineData)); + AddComponent(tmp, new CombustionEngine(vehicleContainer, engineData)); + + var gbx = new DummyGearbox(vehicleContainer); + + var driverPort = driver.OutPort(); + + gbx.CurrentGear = 1; + + var response = driverPort.Initialize(18.KMPHtoMeterPerSecond(), VectoMath.InclinationToAngle(0.5 / 100)); + + + var absTime = 0.SI<Second>(); + + Assert.IsInstanceOfType(response, typeof(ResponseSuccess)); + } + + [TestMethod] public void TestWheelsAndEngine() { diff --git a/VectoCoreTest/Utils/DummyGearbox.cs b/VectoCoreTest/Utils/DummyGearbox.cs index 1a0372b8764460e79e641cf53ae2bcffc3a40d1d..b9b7c4fd3bed9954f62f1387269ce47384139b24 100644 --- a/VectoCoreTest/Utils/DummyGearbox.cs +++ b/VectoCoreTest/Utils/DummyGearbox.cs @@ -40,7 +40,7 @@ namespace TUGraz.VectoCore.Tests.Utils throw new NotImplementedException(); } - public IResponse Initialize() + public IResponse Initialize(NewtonMeter torque, PerSecond angularVelocity) { throw new NotImplementedException(); } diff --git a/VectoCoreTest/Utils/MockPorts.cs b/VectoCoreTest/Utils/MockPorts.cs index 969c8a0149a10eabc2a20f2337881c5097532073..a6f6b3eb82c3c8eac7593e98527d4e79db1d27e5 100644 --- a/VectoCoreTest/Utils/MockPorts.cs +++ b/VectoCoreTest/Utils/MockPorts.cs @@ -24,7 +24,7 @@ namespace TUGraz.VectoCore.Tests.Utils return new ResponseSuccess(); } - public IResponse Initialize() + public IResponse Initialize(NewtonMeter torque, PerSecond angularVelocity) { throw new NotImplementedException(); }