diff --git a/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs b/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs index 9eff0ccf19e3f5ff26847a6fdf34fb8dc47ddd11..59af7d63b34b770217d608c78c6b02a07c580ee1 100644 --- a/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs +++ b/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs @@ -573,7 +573,7 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy public void AT_Gearbox_Special(string cycleData, string modFileName) { var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - var run = ATPowerTrain.CreateEngineeringRun(cycle, modFileName); + var run = ATPowerTrain.CreateEngineeringRun(cycle, GearboxType.ATSerial, modFileName); run.Run(); Assert.IsTrue(run.FinishedWithoutErrors); diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs index 0ca69cc1a27f87457cdefae421bb15ef58526ba6..32533e33e92d5531e93729ef5876465b26fb87be 100644 --- a/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs +++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs @@ -1,10 +1,13 @@ using NUnit.Framework; using TUGraz.VectoCommon.Models; using TUGraz.VectoCommon.Utils; +using TUGraz.VectoCore.Configuration; using TUGraz.VectoCore.Models.Connector.Ports.Impl; using TUGraz.VectoCore.Models.Simulation.Impl; using TUGraz.VectoCore.Models.SimulationComponent.Data; using TUGraz.VectoCore.Models.SimulationComponent.Impl; +using TUGraz.VectoCore.OutputData; +using TUGraz.VectoCore.OutputData.FileIO; using TUGraz.VectoCore.Tests.Integration; using TUGraz.VectoCore.Tests.Utils; @@ -26,7 +29,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent TestCase(15, 300, 3), TestCase(15, 600, 2), TestCase(40, 100, 6), - TestCase(40, 300, 4), + TestCase(40, 300, 5), TestCase(40, 600, 4), TestCase(70, 100, 6), TestCase(70, 300, 6), @@ -54,81 +57,78 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent Assert.AreEqual(vehicleSpeed.IsEqual(0), gearbox.Disengaged); } - [Test] - public void TestATGearboxDriveTorqueConverter() + [Test, + TestCase(GearboxType.ATSerial, TestName = "Drive TorqueConverter - Serial"), + TestCase(GearboxType.ATPowerSplit, TestName = "Drive TorqueConverter - PowerSplit")] + public void TestATGearboxDriveTorqueConverter(GearboxType gbxType) { var cycleData = @" 0, 0, 0, 2 - 20, 8, 0, 0 + 20, 8, 0, 0 200, 0, 0, 2"; var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC.vmod"); + var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType, + string.Format("AT_Vehicle_Drive-TC-{0}.vmod", gbxType==GearboxType.ATSerial ? "ser" : "ps")); run.Run(); Assert.IsTrue(run.FinishedWithoutErrors); } - [Test] - public void TestATGearboxShiftUp() + [Test, + TestCase(GearboxType.ATSerial, TestName = "ShiftUp TorqueConverter - Serial"), + TestCase(GearboxType.ATPowerSplit, TestName = "ShiftUp TorqueConverter - PowerSplit")] + public void TestATGearboxShiftUp(GearboxType gbxType) { var cycleData = @" 0, 0, 0, 2 500, 40, 0, 0"; var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_shiftup.vmod"); + var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType, + string.Format("AT_Vehicle_Drive-TC_shiftup-{0}.vmod", gbxType==GearboxType.ATSerial ? "ser" : "ps")); run.Run(); Assert.IsTrue(run.FinishedWithoutErrors); } - [Test] - public void TestATGearboxShiftDown() + [Test, + TestCase(GearboxType.ATSerial, TestName = "ShiftDown TorqueConverter - Serial"), + TestCase(GearboxType.ATPowerSplit, TestName = "ShiftDown TorqueConverter - PowerSplit")] + public void TestATGearboxShiftDown(GearboxType gbxType) { var cycleData = @" 0, 70, 0, 0 500, 0, 0, 2"; var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_shiftdown.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - - [Test] - public void TestATGearboxDriveUrban() - { - var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Urban"); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Urban.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - [Test] - public void TestATGearboxDriveSuburban() - { - var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Suburban"); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Suburban.vmod"); + var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType, + string.Format("AT_Vehicle_Drive-TC_shiftdown-{0}.vmod", gbxType==GearboxType.ATSerial ? "ser" : "ps")); run.Run(); Assert.IsTrue(run.FinishedWithoutErrors); } - [Test] - public void TestATGearboxDriveInterurban() - { - var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Interurban"); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Interurban.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - [Test] - public void TestATGearboxDriveHeavyurban() + [Test, + TestCase("Urban", GearboxType.ATSerial), + TestCase("Suburban", GearboxType.ATSerial), + TestCase("Interurban", GearboxType.ATSerial), + TestCase("HeavyUrban", GearboxType.ATSerial), + TestCase("Urban", GearboxType.ATPowerSplit), + TestCase("Suburban", GearboxType.ATPowerSplit), + TestCase("Interurban", GearboxType.ATPowerSplit), + TestCase("HeavyUrban", GearboxType.ATPowerSplit) + ] + public void TestATGearboxDriveCycle(string cycleName, GearboxType gbxType) { - var cycle = SimpleDrivingCycles.ReadDeclarationCycle("HeavyUrban"); - var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Heavyurban.vmod"); - + Assert.IsTrue(gbxType.AutomaticTransmission()); + var cycle = SimpleDrivingCycles.ReadDeclarationCycle(cycleName); + var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType, + string.Format("AT_Vehicle_Drive-TC_{0}-{1}.vmod", cycleName, gbxType==GearboxType.ATSerial ? "ser" : "ps")); + + var sumWriter = + new SummaryDataContainer( + new FileOutputWriter(string.Format("AT_Vehicle_Drive-TC_{0}-{1}", cycleName, gbxType == GearboxType.ATSerial ? "ser" : "ps"))); + ((VehicleContainer)run.GetContainer()).WriteSumData = (writer, mass, loading) => + sumWriter.Write(run.GetContainer().ModalData, cycleName, string.Format("{0}-{1}", 0, 0), + cycleName + Constants.FileExtensions.CycleFile, mass, loading); run.Run(); + sumWriter.Finish(); Assert.IsTrue(run.FinishedWithoutErrors); } }