From edd345d6b409d7df0913aa41970fedf55e513530 Mon Sep 17 00:00:00 2001 From: Michael Krisper <michael.krisper@tugraz.at> Date: Thu, 19 May 2016 14:06:31 +0200 Subject: [PATCH] new parameterized tests in NUnit format (TestCase) --- VectoCommon/VectoCommon/VectoCommon.csproj | 2 +- .../Models/SimulationComponent/Impl/Driver.cs | 30 +- VectoCore/VectoCore/VectoCore.csproj | 4 + .../BusAuxiliaries/AuxDemandTest.cs | 2 +- .../BusAuxiliaries/BusAdapterTest.cs | 6 +- .../BusAuxiliaries/SimpleCycleTest.cs | 1280 ++----------- .../DriverStrategy/DriverStrategyTestTruck.cs | 1593 +++++------------ .../Integration/SimpleDrivingCycles.cs | 425 +---- .../CombustionEngineTest.cs | 9 - 9 files changed, 634 insertions(+), 2717 deletions(-) diff --git a/VectoCommon/VectoCommon/VectoCommon.csproj b/VectoCommon/VectoCommon/VectoCommon.csproj index aee18349db..1a3b3c98ef 100644 --- a/VectoCommon/VectoCommon/VectoCommon.csproj +++ b/VectoCommon/VectoCommon/VectoCommon.csproj @@ -17,7 +17,7 @@ <DebugType>full</DebugType> <Optimize>false</Optimize> <OutputPath>bin\Debug\</OutputPath> - <DefineConstants>DEBUG;TRACE</DefineConstants> + <DefineConstants>DEBUG</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> </PropertyGroup> diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs index 63163d0fa9..a942b38e81 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Driver.cs @@ -31,9 +31,7 @@ using System; using System.Collections.Generic; -using System.Diagnostics; using System.Linq; -using iTextSharp.text.pdf; using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.Models; using TUGraz.VectoCommon.Utils; @@ -59,7 +57,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl protected IDriverStrategy DriverStrategy; private Dictionary<string, object> _coastData = new Dictionary<string, object>(20); - private string CurrentAction = ""; + private string _currentAction = ""; //public MeterPerSquareSecond LookaheadDeceleration { get; protected set; } @@ -157,7 +155,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl IResponse previousResponse = null) { IterationStatistics.Increment(this, "Accelerate"); - CurrentAction = "Accelerate"; + _currentAction = "Accelerate"; Log.Debug("DrivingAction Accelerate"); var operatingPoint = ComputeAcceleration(ds, targetVelocity); @@ -237,7 +235,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl public IResponse DrivingActionCoast(Second absTime, Meter ds, MeterPerSecond maxVelocity, Radian gradient) { IterationStatistics.Increment(this, "Coast"); - CurrentAction = "Coast"; + _currentAction = "Coast"; Log.Debug("DrivingAction Coast"); return CoastOrRollAction(absTime, ds, maxVelocity, gradient, false); @@ -253,7 +251,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl /// <returns></returns> public IResponse DrivingActionRoll(Second absTime, Meter ds, MeterPerSecond maxVelocity, Radian gradient) { - CurrentAction = "Roll"; + _currentAction = "Roll"; IterationStatistics.Increment(this, "Roll"); Log.Debug("DrivingAction Roll"); @@ -359,7 +357,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl IResponse previousResponse = null, Meter targetDistance = null) { IterationStatistics.Increment(this, "Brake"); - CurrentAction = "Brake"; + _currentAction = "Brake"; Log.Debug("DrivingAction Brake"); IResponse retVal = null; @@ -767,7 +765,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl /// <returns></returns> public IResponse DrivingActionHalt(Second absTime, Second dt, MeterPerSecond targetVelocity, Radian gradient) { - CurrentAction = "Halt"; + _currentAction = "Halt"; if (!targetVelocity.IsEqual(0) || !DataBus.VehicleStopped) { Log.Error("TargetVelocity ({0}) and VehicleVelocity ({1}) must be zero when vehicle is halting!", targetVelocity, DataBus.VehicleSpeed); @@ -795,14 +793,14 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl { container[ModalResultField.acc] = CurrentState.Acceleration; - //todo mk-2016-05-11: remove additional columns in moddata after testing of LAC finished - foreach (var kv in _coastData) { - container.SetDataValue(kv.Key, kv.Value); - } - container.SetDataValue("Alt", DataBus.Altitude.Value()); - container.SetDataValue("DrivingMode", ((DefaultDriverStrategy)DriverStrategy).CurrentDrivingMode); - container.SetDataValue("Action", CurrentAction); - _coastData.Clear(); + ////todo mk-2016-05-11: remove additional columns in moddata after testing of LAC finished + //foreach (var kv in _coastData) { + // container.SetDataValue(kv.Key, kv.Value); + //} + //container.SetDataValue("Alt", DataBus.Altitude.Value()); + //container.SetDataValue("DrivingMode", ((DefaultDriverStrategy)DriverStrategy).CurrentDrivingMode); + //container.SetDataValue("Action", _currentAction); + //_coastData.Clear(); } protected override void DoCommitSimulationStep() diff --git a/VectoCore/VectoCore/VectoCore.csproj b/VectoCore/VectoCore/VectoCore.csproj index 2f27bdd07c..acdc9603ce 100644 --- a/VectoCore/VectoCore/VectoCore.csproj +++ b/VectoCore/VectoCore/VectoCore.csproj @@ -13,6 +13,7 @@ <FileAlignment>512</FileAlignment> <CodeContractsAssemblyMode>1</CodeContractsAssemblyMode> <NuGetPackageImportStamp>5f3566e7</NuGetPackageImportStamp> + <TargetFrameworkProfile /> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <DebugSymbols>true</DebugSymbols> @@ -69,6 +70,7 @@ <CodeContractsRuntimeCheckingLevel>Full</CodeContractsRuntimeCheckingLevel> <CodeContractsReferenceAssembly>%28none%29</CodeContractsReferenceAssembly> <CodeContractsAnalysisWarningLevel>3</CodeContractsAnalysisWarningLevel> + <Prefer32Bit>false</Prefer32Bit> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <DebugType>pdbonly</DebugType> @@ -78,6 +80,8 @@ </DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> + <AllowUnsafeBlocks>false</AllowUnsafeBlocks> + <Prefer32Bit>false</Prefer32Bit> </PropertyGroup> <ItemGroup> <Reference Include="itextsharp"> diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs index 443e5aa264..c37bb9de86 100644 --- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs +++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs @@ -63,7 +63,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries var torque = busAux.PowerDemand(0.SI<Second>(), 1.SI<Second>(), engineDrivelinePower / engineSpeed, (internalPower * 1000).SI<Watt>() / engineSpeed, engineSpeed); - Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-4); + Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-3); } [Test] diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs index 2a2c4cae33..a86b9525a9 100644 --- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs +++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs @@ -66,7 +66,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries var torque = busAux.PowerDemand(0.SI<Second>(), 1.SI<Second>(), engineDrivelinePower / engineSpeed, (internalPower * 1000).SI<Watt>() / engineSpeed, engineSpeed); - Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-4); + Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-3); } [Test] @@ -98,7 +98,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries var torque = busAux.PowerDemand(0.SI<Second>(), 1.SI<Second>(), engineDrivelinePower / engineSpeed, (internalPower * 1000).SI<Watt>() / engineSpeed, engineSpeed); - Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-4); + Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-3); } [Test] @@ -124,7 +124,6 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-3); } - [Test, TestCase(19000)] public void AuxDemandContinuityTest(double vehicleWeight) @@ -169,6 +168,5 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries //VectoCSVFile.Write("auxPowerDemand_EngineSpeed.csv", table); } - } } \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/SimpleCycleTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/SimpleCycleTest.cs index fb06010ea6..06c159f84b 100644 --- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/SimpleCycleTest.cs +++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/SimpleCycleTest.cs @@ -29,1106 +29,224 @@ * Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology */ -using Microsoft.VisualStudio.TestTools.UnitTesting; -using NLog; +using System; +using System.Globalization; +using NUnit.Framework; +using TUGraz.VectoCommon.Utils; using TUGraz.VectoCore.Models.Simulation.Data; -using TUGraz.VectoCore.Models.Simulation.Impl; -using TUGraz.VectoCore.Models.SimulationComponent.Impl; using TUGraz.VectoCore.Tests.Utils; namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries { - [TestClass] - public class SimpleCycleTest + [TestFixture] + public class DriverStrategyTestCoachAux { - [TestInitialize] + [TestFixtureSetUp] public void Init() { - LogManager.DisableLogging(); + //LogManager.DisableLogging(); #if TRACE GraphWriter.Enable(); #else GraphWriter.Disable(); #endif - GraphWriter.Xfields = new[] { ModalResultField.time, ModalResultField.dist }; GraphWriter.Yfields = new[] { ModalResultField.v_act, ModalResultField.acc, ModalResultField.n_eng_avg, ModalResultField.Gear, - ModalResultField.P_eng_out, ModalResultField.P_aux, ModalResultField.AA_TotalCycleFC_Grams + ModalResultField.P_eng_out, ModalResultField.T_eng_fcmap, ModalResultField.FCMap }; - GraphWriter.Series1Label = "Vecto 3"; - GraphWriter.Series2Label = "Vecto 2.0+AUX"; - } - - #region Accelerate - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_Level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Accelerate_20_60_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphilll_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_60_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_60_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_60_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_uphill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_60_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_downhill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_60_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_uphill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_uphill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_60_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_60_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_60_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_60_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Accelerate_0_85_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_uphill_1() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_1); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Accelerate_0_85_uphill_1.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_uphill_1.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_uphill_1.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_uphill_2() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_2); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Accelerate_0_85_uphill_2.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_uphill_2.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_uphill_2.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Accelerate_0_85_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_0_85_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_0_85_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_uphill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_0_85_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_downhill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX"),] - public void Coach_AAUX_Accelerate_0_85_uphill_10() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_10); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_0_85_uphill_10.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_uphill_10.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_uphill_10.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_0_85_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_0_85_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_0_85_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_0_85_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_stop_0_85_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_stop_0_85_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_stop_0_85_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_stop_0_85_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_stop_0_85_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Accelerate_20_22_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_22_uphill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Accelerate_20_22_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Accelerate_20_22_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Accelerate_20_22_uphill_5.vmod"); - } - - #endregion - - #region Decelerate - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_22_20_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_22_20_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Decelerate_22_20_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_22_20_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_22_20_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_60_20_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_60_20_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_60_20_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_45_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_45_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_45_0_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_45_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_45_0_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_uphill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_45_0_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_45_0_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_45_0_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_45_0_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_45_0_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_45_0_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_45_0_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_60_20_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_60_20_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_60_20_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_60_20_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Decelerate_60_20_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_60_20_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_downhill_5.vmod"); - } - - //[TestMethod, TestCategory("ComparisonAAUX"), TestCategory("LongRunning")] - //public void Decelerate_60_20_uphill_25() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_25); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_60_20_uphill_25.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Decelerate_60_20_uphill_25.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_uphill_25.vmod"); - //} - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_60_20_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Decelerate_60_20_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_60_20_downhill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_downhill_25.vmod"); - } - - //[TestMethod, TestCategory("ComparisonAAUX"), TestCategory("LongRunning")] - //public void Coach_AAUX_Decelerate_60_20_uphill_15() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_15); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_60_20_uphill_15.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Decelerate_60_20_uphill_15.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_uphill_15.vmod"); - //} - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_60_20_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Decelerate_60_20_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_60_20_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_60_20_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_80_0_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_80_0_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_80_0_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_80_0_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_80_0_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_80_0_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_80_0_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_downhill_5.vmod"); - } - - //[TestMethod, TestCategory("ComparisonAAUX"), TestCategory("LongRunning")] - //public void Decelerate_80_0_uphill_25() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_25); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Decelerate_80_0_steep_uphill_25.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Decelerate_80_0_steep_uphill_25.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_steep_uphill_25.vmod"); - //} - - [TestMethod, TestCategory("ComparisonAAUX"), TestCategory("LongRunning")] - public void Coach_AAUX_Decelerate_80_0_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Decelerate_80_0_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_80_0_downhill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_downhill_25.vmod"); - } - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Decelerate_80_0_uphill_3() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_3); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Decelerate_80_0_uphill_3.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Decelerate_80_0_uphill_3.vmod", - // @"..\..\TestData\Integration\BusAuxiliaripublic void Coach_es\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_uphill_3.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX"), TestCategory("LongRunning")] - //public void Decelerate_80_0_uphill_15() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_15); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Decelerate_80_0_steep_uphill_15.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Decelerate_80_0_steep_uphill_15.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_steep_uphill_15.vmod"); - //} - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Decelerate_80_0_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Decelerate_80_0_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Decelerate_80_0_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Decelerate_80_0_downhill_15.vmod"); - } - - #endregion - - #region Drive - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_5); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_downhill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_20_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_20_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_20_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_20_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_20_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_30_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_30_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_30_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_30_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_50_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_50_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_50_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_50_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX"), TestCategory("LongRunning")] - public void Coach_AAUX_Drive_80_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Drive_80_uphill_25.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_uphill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_uphill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_10_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_10_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_10_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(new[] { - // <s>,<v>,<grad>,<stop> - " 0, 10, 5, 0", - "800, 10, 5, 0", - }); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_10_uphill_5.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_uphill_5.vmod"); - } - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Drive_10_downhill_5() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_5); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_downhill_5.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Drive_10_downhill_5.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_downhill_5.vmod"); - //} - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_10_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_10_downhill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_10_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_25); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_10_uphill_25.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_10_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_10_downhill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_10_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_15); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_10_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_10_uphill_15.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_10_uphill_15.vmod"); + GraphWriter.Series2Label = "Vecto 2.0_aux"; + } + + [Category("ComparisonAAUX"), + TestCase(0, 40, 25), TestCase(0, 40, 20), TestCase(0, 40, 15), + TestCase(0, 40, 10), TestCase(0, 40, 5), TestCase(0, 40, 1), + TestCase(0, 40, 0), + TestCase(0, 40, -1), TestCase(0, 40, -5), TestCase(0, 40, -10), + TestCase(0, 40, -15), TestCase(0, 40, -20), TestCase(0, 40, -25), + TestCase(0, 60, 25), TestCase(0, 60, 20), TestCase(0, 60, 15), + TestCase(0, 60, 10), TestCase(0, 60, 5), TestCase(0, 60, 1), + TestCase(0, 60, 0), + TestCase(0, 60, -1), TestCase(0, 60, -5), TestCase(0, 60, -10), + TestCase(0, 60, -15), TestCase(0, 60, -20), TestCase(0, 60, -25), + TestCase(0, 85, 25), TestCase(0, 85, 20), TestCase(0, 85, 15), + TestCase(0, 85, 10), TestCase(0, 85, 5), TestCase(0, 85, 1), + TestCase(0, 85, 0), + TestCase(0, 85, -1), TestCase(0, 85, -5), TestCase(0, 85, -10), + TestCase(0, 85, -15), TestCase(0, 85, -20), TestCase(0, 85, -25), + TestCase(20, 40, 25), TestCase(20, 40, 20), TestCase(20, 40, 15), + TestCase(20, 40, 10), TestCase(20, 40, 5), TestCase(20, 40, 1), + TestCase(20, 40, 0), + TestCase(20, 40, -1), TestCase(20, 40, -5), TestCase(20, 40, -10), + TestCase(20, 40, -15), TestCase(20, 40, -20), TestCase(20, 40, -25), + TestCase(20, 60, 25), TestCase(20, 60, 20), TestCase(20, 60, 15), + TestCase(20, 60, 10), TestCase(20, 60, 5), TestCase(20, 60, 1), + TestCase(20, 60, 0), + TestCase(20, 60, -1), TestCase(20, 60, -5), TestCase(20, 60, -10), + TestCase(20, 60, -15), TestCase(20, 60, -20), TestCase(20, 60, -25), + TestCase(20, 85, 25), TestCase(20, 85, 20), TestCase(20, 85, 15), + TestCase(20, 85, 10), TestCase(20, 85, 5), TestCase(20, 85, 1), + TestCase(20, 85, 0), + TestCase(20, 85, -1), TestCase(20, 85, -5), TestCase(20, 85, -10), + TestCase(20, 85, -15), TestCase(20, 85, -20), TestCase(20, 85, -25), + TestCase(20, 22, 5), + ] + public void Coach_Accelerate(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Coach_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Coach_Special(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Coach_AAUX_Cycle_Accelerate_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonAAUX"), + TestCase(40, 0, 25), TestCase(40, 0, 20), TestCase(40, 0, 15), + TestCase(40, 0, 10), TestCase(40, 0, 5), TestCase(40, 0, 1), + TestCase(40, 0, 0), + TestCase(40, 0, -1), TestCase(40, 0, -5), TestCase(40, 0, -10), + TestCase(40, 0, -15), TestCase(40, 0, -20), TestCase(40, 0, -25), + TestCase(60, 0, 25), TestCase(60, 0, 20), TestCase(60, 0, 15), + TestCase(60, 0, 10), TestCase(60, 0, 5), TestCase(60, 0, 1), + TestCase(60, 0, 0), + TestCase(60, 0, -1), TestCase(60, 0, -5), TestCase(60, 0, -10), + TestCase(60, 0, -15), TestCase(60, 0, -20), TestCase(60, 0, -25), + TestCase(85, 0, 25), TestCase(85, 0, 20), TestCase(85, 0, 15), + TestCase(85, 0, 10), TestCase(85, 0, 5), TestCase(85, 0, 1), + TestCase(85, 0, 0), + TestCase(85, 0, -1), TestCase(85, 0, -5), TestCase(85, 0, -10), + TestCase(85, 0, -15), TestCase(85, 0, -20), TestCase(85, 0, -25), + TestCase(40, 20, 25), TestCase(40, 20, 20), TestCase(40, 20, 15), + TestCase(40, 20, 10), TestCase(40, 20, 5), TestCase(40, 20, 1), + TestCase(40, 20, 0), + TestCase(40, 20, -1), TestCase(40, 20, -5), TestCase(40, 20, -10), + TestCase(40, 20, -15), TestCase(40, 20, -20), TestCase(40, 20, -25), + TestCase(60, 20, 25), TestCase(60, 20, 20), TestCase(60, 20, 15), + TestCase(60, 20, 10), TestCase(60, 20, 5), TestCase(60, 20, 1), + TestCase(60, 20, 0), + TestCase(60, 20, -1), TestCase(60, 20, -5), TestCase(60, 20, -10), + TestCase(60, 20, -15), TestCase(60, 20, -20), TestCase(60, 20, -25), + TestCase(85, 20, 25), TestCase(85, 20, 20), TestCase(85, 20, 15), + TestCase(85, 20, 10), TestCase(85, 20, 5), TestCase(85, 20, 1), + TestCase(85, 20, 0), + TestCase(85, 20, -1), TestCase(85, 20, -5), TestCase(85, 20, -10), + TestCase(85, 20, -15), TestCase(85, 20, -20), TestCase(85, 20, -25), + TestCase(22, 20, -5), + ] + public void Coach_Decelerate(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Coach_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Coach_Special(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Coach_AAUX_Cycle_Decelerate_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonAAUX"), + TestCase(10, 10, 25), TestCase(10, 10, 20), TestCase(10, 10, 15), + TestCase(10, 10, 10), TestCase(10, 10, 5), TestCase(10, 10, 1), + TestCase(10, 10, 0), + TestCase(10, 10, -1), TestCase(10, 10, -5), TestCase(10, 10, -10), + TestCase(10, 10, -15), TestCase(10, 10, -20), TestCase(10, 10, -25), + TestCase(20, 20, 25), TestCase(20, 20, 20), TestCase(20, 20, 15), + TestCase(20, 20, 10), TestCase(20, 20, 5), TestCase(20, 20, 1), + TestCase(20, 20, 0), + TestCase(20, 20, -1), TestCase(20, 20, -5), TestCase(20, 20, -10), + TestCase(20, 20, -15), TestCase(20, 20, -20), TestCase(20, 20, -25), + TestCase(30, 30, 25), TestCase(30, 30, 20), TestCase(30, 30, 15), + TestCase(30, 30, 10), TestCase(30, 30, 5), TestCase(30, 30, 1), + TestCase(30, 30, 0), + TestCase(30, 30, -1), TestCase(30, 30, -5), TestCase(30, 30, -10), + TestCase(30, 30, -15), TestCase(30, 30, -20), TestCase(30, 30, -25), + TestCase(40, 40, 25), TestCase(40, 40, 20), TestCase(40, 40, 15), + TestCase(40, 40, 10), TestCase(40, 40, 5), TestCase(40, 40, 1), + TestCase(40, 40, 0), + TestCase(40, 40, -1), TestCase(40, 40, -5), TestCase(40, 40, -10), + TestCase(40, 40, -15), TestCase(40, 40, -20), TestCase(40, 40, -25), + TestCase(50, 50, 25), TestCase(50, 50, 20), TestCase(50, 50, 15), + TestCase(50, 50, 10), TestCase(50, 50, 5), TestCase(50, 50, 1), + TestCase(50, 50, 0), + TestCase(50, 50, -1), TestCase(50, 50, -5), TestCase(50, 50, -10), + TestCase(50, 50, -15), TestCase(50, 50, -20), TestCase(50, 50, -25), + TestCase(60, 60, 25), TestCase(60, 60, 20), TestCase(60, 60, 15), + TestCase(60, 60, 10), TestCase(60, 60, 5), TestCase(60, 60, 1), + TestCase(60, 60, 0), + TestCase(60, 60, -1), TestCase(60, 60, -5), TestCase(60, 60, -10), + TestCase(60, 60, -15), TestCase(60, 60, -20), TestCase(60, 60, -25), + TestCase(80, 80, 25), TestCase(80, 80, 20), TestCase(80, 80, 15), + TestCase(80, 80, 10), TestCase(80, 80, 5), TestCase(80, 80, 1), + TestCase(80, 80, 0), + TestCase(80, 80, -1), TestCase(80, 80, -5), TestCase(80, 80, -10), + TestCase(80, 80, -15), TestCase(80, 80, -20), TestCase(80, 80, -25), + TestCase(85, 85, 25), TestCase(85, 85, 20), TestCase(85, 85, 15), + TestCase(85, 85, 10), TestCase(85, 85, 5), TestCase(85, 85, 1), + TestCase(85, 85, 0), + TestCase(85, 85, -1), TestCase(85, 85, -5), TestCase(85, 85, -10), + TestCase(85, 85, -15), TestCase(85, 85, -20), TestCase(85, 85, -25), + ] + public void Coach_Drive(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Coach_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Coach_Special(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Coach_AAUX_Cycle_Drive_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonAAUX"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope, + "Coach_AAUX_Drive_80_slope_inc.vmod", "24t Coach_AAUX_Cycle_Drive_80_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope, + "Coach_AAUX_Drive_50_slope_inc.vmod", "24t Coach_AAUX_Cycle_Drive_50_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope, + "Coach_AAUX_Drive_30_slope_inc.vmod", "24t Coach_AAUX_Cycle_Drive_30_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope, + "Coach_AAUX_Drive_80_slope_dec.vmod", "24t Coach_AAUX_Cycle_Drive_80_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope, + "Coach_AAUX_Drive_50_slope_dec.vmod", "24t Coach_AAUX_Cycle_Drive_50_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope, + "Coach_AAUX_Drive_30_slope_dec.vmod", "24t Coach_AAUX_Cycle_Drive_30_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope, + "Coach_AAUX_Drive_80_slope_dec-inc.vmod", "24t Coach_AAUX_Cycle_Drive_80_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope, + "Coach_AAUX_Drive_50_slope_dec-inc.vmod", "24t Coach_AAUX_Cycle_Drive_50_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope, + "Coach_AAUX_Drive_30_slope_dec-inc.vmod", "24t Coach_AAUX_Cycle_Drive_30_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level, + "Coach_AAUX_DecelerateWhileBrake_80_0_level.vmod", "24t Coach_AAUX_Cycle_DecelerateWhileBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level, + "Coach_AAUX_AccelerateWhileBrake_80_0_level.vmod", "24t Coach_AAUX_Cycle_AccelerateWhileBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level, + "Coach_AAUX_AccelerateAtBrake_80_0_level.vmod", "24t Coach_AAUX_Cycle_AccelerateAtBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level, + "Coach_AAUX_AccelerateBeforeBrake_80_0_level.vmod", "24t Coach_AAUX_Cycle_AccelerateBeforeBrake_80_0_level.vmod" + ), + TestCase(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level, + "Coach_AAUX_Drive_stop_85_stop_85_level.vmod", "24t Coach_AAUX_Cycle_Drive_stop_85_stop_85_level.vmod"), + ] + public void Coach_Special(string cycleData, string modFileName, string compareFileName) + { + var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); + var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, modFileName); + + run.Run(); + Assert.IsTrue(run.FinishedWithoutErrors); + + GraphWriter.Write(modFileName, @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\" + compareFileName); } - - #endregion - - #region Slope - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_slope_inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_slope_inc.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_50_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_50_slope_inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_50_slope_inc.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_50_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_30_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_30_slope_inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_30_slope_inc.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_30_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_Decreasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_slope_dec.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_slope_dec.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_Decreasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_50_Decreasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_50_slope_dec.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_50_slope_dec.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_50_Decreasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_30_Decreasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_30_slope_dec.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_30_slope_dec.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_30_Decreasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_80_Dec_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_80_slope_dec-inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_80_slope_dec-inc.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_80_Dec_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_50_Dec_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_50_slope_dec-inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_50_slope_dec-inc.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_50_Dec_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_30_Dec_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, "Coach_AAUX_Drive_30_slope_dec-inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_30_slope_dec-inc.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_30_Dec_Increasing_Slope.vmod"); - } - - #endregion - - #region Misc - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_DecelerateWhileBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_DecelerateWhileBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_DecelerateWhileBrake_80_0_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_DecelerateWhileBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_AccelerateWhileBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_AccelerateWhileBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_AccelerateWhileBrake_80_0_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_AccelerateWhileBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_AccelerateAtBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_AccelerateAtBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_AccelerateAtBrake_80_0_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_AccelerateAtBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_AccelerateBeforeBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_AccelerateBeforeBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_AccelerateBeforeBrake_80_0_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_AccelerateBeforeBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonAAUX")] - public void Coach_AAUX_Drive_stop_85_stop_85_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_Drive_stop_85_stop_85_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Coach_AAUX_Drive_stop_85_stop_85_level.vmod", - @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0\24t Coach_AAUX_Cycle_Drive_stop_85_stop_85_level.vmod"); - } - - #endregion - - //#region AccelerateOverspeed - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_85_downhill_5_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_85_downhill_5-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_85_downhill_5-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_85_downhill_5.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_85_downhill_3_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_3); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_85_downhill_3-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_85_downhill_3-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_85_downhill_3.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_85_downhill_1_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_1); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_85_downhill_1-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_85_downhill_1-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_85_downhill_1.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_60_downhill_5_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_5); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_60_downhill_5-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_60_downhill_5-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_60_downhill_5.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_60_downhill_3_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_3); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_60_downhill_3-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_60_downhill_3-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_60_downhill_3.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_60_downhill_1_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_1); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_60_downhill_1-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_60_downhill_1-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_60_downhill_1.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_40_downhill_5_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_5); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_40_downhill_5-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_40_downhill_5-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_40_downhill_5.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_40_downhill_3_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_3); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_40_downhill_3-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_40_downhill_3-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_40_downhill_3.vmod"); - //} - - //[TestMethod, TestCategory("ComparisonAAUX")] - //public void Coach_AAUX_Accelerate_0_40_downhill_1_overspeed() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_1); - // var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - // "Coach_AAUX_Accelerate_0_40_downhill_1-overspeed.vmod", true); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Coach_AAUX_Accelerate_0_40_downhill_1-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_40_downhill_1.vmod"); - //} - - //#endregion - - [TestMethod, TestCategory("CycleTest")] - public void Coach_AAUX_Accelerate_0_40_downhill_1_overspeed() - { - var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Coach"); - var run = CoachAdvancedAuxPowertrain.CreateEngineeringRun(cycle, - "Coach_AAUX_CoachCycle.vmod", true); - - //((DistanceBasedDrivingCycle)((VehicleContainer)run.GetContainer()).Cycle).SetDriveOffDistance(123613.SI<Meter>()); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - //GraphWriter.Write("Coach_AAUX_Accelerate_0_40_downhill_1-overspeed.vmod", - // @"..\..\TestData\Integration\BusAuxiliaries\Vecto2.0_Overspeed\24t Coach_AAUX_Cycle_Accelerate_0_40_downhill_1.vmod"); - } - - //@"E:\QUAM\Workspace\VECTO_quam\Generic Vehicles\Engineering Mode\24t Coach\24t Coach_AAux.vecto" } } \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs b/VectoCore/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs index b5b6334641..ac5a67786c 100644 --- a/VectoCore/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs +++ b/VectoCore/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs @@ -29,18 +29,20 @@ * Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology */ -using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Globalization; +using NUnit.Framework; using TUGraz.VectoCommon.Utils; using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.Tests.Utils; namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy { - [TestClass] + [TestFixture] public class DriverStrategyTestTruck { - [TestInitialize] - public void DisableLogging() + [TestFixtureSetUp] + public void Init() { //LogManager.DisableLogging(); #if TRACE @@ -48,7 +50,6 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy #else GraphWriter.Disable(); #endif - GraphWriter.Xfields = new[] { ModalResultField.time, ModalResultField.dist }; GraphWriter.Yfields = new[] { @@ -59,1200 +60,406 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy GraphWriter.Series2Label = "Vecto 2.2"; } - #region Accelerate - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_60_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_Level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_60_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphilll_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_20_60_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_uphill_5.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_60_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_20_60_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_downhill_5.vmod"); - } - - - //[TestMethod, TestCategory("ComparisonV2"), TestCategory("LongRunning")] - //public void Truck_Accelerate_20_60_uphill_25() - //{ - // var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_25); - // var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - // "Truck_DriverStrategy_Accelerate_20_60_uphill_25.vmod"); - - // run.Run(); - // Assert.IsTrue(run.FinishedWithoutErrors); - - // GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_uphill_25.vmod", - // @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_uphill_25.vmod"); - //} - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_60_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_20_60_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_downhill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_60_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_20_60_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_uphill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_uphill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_60_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_20_60_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_uphill_1() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_1); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_uphill_1.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_1.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_1.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_uphill_2() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_2); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_uphill_2.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_2.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_2.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5); - Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_5.vmod").Run(); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_uphill_10() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_10); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_uphill_10.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_10.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_10.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_stop_0_85_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_stop_0_85_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_stop_0_85_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_stop_0_85_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_stop_0_85_level.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_20_22_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_22_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_20_22_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_22_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_22_uphill_5.vmod"); - } - - #endregion - - #region Decelerate - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_22_20_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_22_20_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_22_20_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_22_20_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_22_20_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_60_20_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_45_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_45_0_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_45_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_45_0_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_45_0_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_45_0_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_45_0_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_45_0_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_45_0_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_45_0_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_45_0_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_60_20_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_60_20_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_60_20_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_60_20_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_downhill_5.vmod"); - } - -// [TestMethod, TestCategory("ComparisonV2"), TestCategory("LongRunning")] -// public void Decelerate_60_20_uphill_25() -// { -// var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_25); -// var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, -// "Truck_DriverStrategy_Decelerate_60_20_uphill_25.vmod"); - -// run.Run(); -// Assert.IsTrue(run.FinishedWithoutErrors); - -//// GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_uphill_25.vmod", -//// @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_uphill_25.vmod"); -// } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_60_20_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_60_20_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_downhill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_60_20_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_60_20_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - //GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_uphill_15.vmod", - // @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_uphill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_60_20_downhill_15() + [TestCase, Category("ComparisonV2")] + public void TestGraph() + { + var imgV3 = @"TestData\Results\Integration\24t Truck_Cycle_Drive_50_Dec_Increasing_Slope.vmod"; + var imgv22 = @"TestData\Results\Integration\24t Truck_Cycle_Drive_50_Dec_Increasing_Slope.vmod"; + + GraphWriter.Write(imgV3, imgv22); + } + + [TestCase, Category("ComparisonV2")] + public void TestSingleGraph() + { + var imgV3 = @"..\..\..\VectoCoreTest\bin\Debug\Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod"; + + GraphWriter.Write(imgV3); + } + + [Category("ComparisonV2"), + TestCase(0, 40, 25), TestCase(0, 40, 20), TestCase(0, 40, 15), + TestCase(0, 40, 10), TestCase(0, 40, 5), TestCase(0, 40, 1), + TestCase(0, 40, 0), + TestCase(0, 40, -1), TestCase(0, 40, -5), TestCase(0, 40, -10), + TestCase(0, 40, -15), TestCase(0, 40, -20), TestCase(0, 40, -25), + TestCase(0, 60, 25), TestCase(0, 60, 20), TestCase(0, 60, 15), + TestCase(0, 60, 10), TestCase(0, 60, 5), TestCase(0, 60, 1), + TestCase(0, 60, 0), + TestCase(0, 60, -1), TestCase(0, 60, -5), TestCase(0, 60, -10), + TestCase(0, 60, -15), TestCase(0, 60, -20), TestCase(0, 60, -25), + TestCase(0, 85, 25), TestCase(0, 85, 20), TestCase(0, 85, 15), + TestCase(0, 85, 10), TestCase(0, 85, 5), TestCase(0, 85, 1), + TestCase(0, 85, 0), + TestCase(0, 85, -1), TestCase(0, 85, -5), TestCase(0, 85, -10), + TestCase(0, 85, -15), TestCase(0, 85, -20), TestCase(0, 85, -25), + TestCase(20, 40, 25), TestCase(20, 40, 20), TestCase(20, 40, 15), + TestCase(20, 40, 10), TestCase(20, 40, 5), TestCase(20, 40, 1), + TestCase(20, 40, 0), + TestCase(20, 40, -1), TestCase(20, 40, -5), TestCase(20, 40, -10), + TestCase(20, 40, -15), TestCase(20, 40, -20), TestCase(20, 40, -25), + TestCase(20, 60, 25), TestCase(20, 60, 20), TestCase(20, 60, 15), + TestCase(20, 60, 10), TestCase(20, 60, 5), TestCase(20, 60, 1), + TestCase(20, 60, 0), + TestCase(20, 60, -1), TestCase(20, 60, -5), TestCase(20, 60, -10), + TestCase(20, 60, -15), TestCase(20, 60, -20), TestCase(20, 60, -25), + TestCase(20, 85, 25), TestCase(20, 85, 20), TestCase(20, 85, 15), + TestCase(20, 85, 10), TestCase(20, 85, 5), TestCase(20, 85, 1), + TestCase(20, 85, 0), + TestCase(20, 85, -1), TestCase(20, 85, -5), TestCase(20, 85, -10), + TestCase(20, 85, -15), TestCase(20, 85, -20), TestCase(20, 85, -25), + TestCase(20, 22, 5), + ] + public void Truck_Accelerate(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Truck_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Truck_Special(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Truck_Cycle_Accelerate_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonV2"), + TestCase(40, 0, 25), TestCase(40, 0, 20), TestCase(40, 0, 15), + TestCase(40, 0, 10), TestCase(40, 0, 5), TestCase(40, 0, 1), + TestCase(40, 0, 0), + TestCase(40, 0, -1), TestCase(40, 0, -5), TestCase(40, 0, -10), + TestCase(40, 0, -15), TestCase(40, 0, -20), TestCase(40, 0, -25), + TestCase(60, 0, 25), TestCase(60, 0, 20), TestCase(60, 0, 15), + TestCase(60, 0, 10), TestCase(60, 0, 5), TestCase(60, 0, 1), + TestCase(60, 0, 0), + TestCase(60, 0, -1), TestCase(60, 0, -5), TestCase(60, 0, -10), + TestCase(60, 0, -15), TestCase(60, 0, -20), TestCase(60, 0, -25), + TestCase(85, 0, 25), TestCase(85, 0, 20), TestCase(85, 0, 15), + TestCase(85, 0, 10), TestCase(85, 0, 5), TestCase(85, 0, 1), + TestCase(85, 0, 0), + TestCase(85, 0, -1), TestCase(85, 0, -5), TestCase(85, 0, -10), + TestCase(85, 0, -15), TestCase(85, 0, -20), TestCase(85, 0, -25), + TestCase(40, 20, 25), TestCase(40, 20, 20), TestCase(40, 20, 15), + TestCase(40, 20, 10), TestCase(40, 20, 5), TestCase(40, 20, 1), + TestCase(40, 20, 0), + TestCase(40, 20, -1), TestCase(40, 20, -5), TestCase(40, 20, -10), + TestCase(40, 20, -15), TestCase(40, 20, -20), TestCase(40, 20, -25), + TestCase(60, 20, 25), TestCase(60, 20, 20), TestCase(60, 20, 15), + TestCase(60, 20, 10), TestCase(60, 20, 5), TestCase(60, 20, 1), + TestCase(60, 20, 0), + TestCase(60, 20, -1), TestCase(60, 20, -5), TestCase(60, 20, -10), + TestCase(60, 20, -15), TestCase(60, 20, -20), TestCase(60, 20, -25), + TestCase(85, 20, 25), TestCase(85, 20, 20), TestCase(85, 20, 15), + TestCase(85, 20, 10), TestCase(85, 20, 5), TestCase(85, 20, 1), + TestCase(85, 20, 0), + TestCase(85, 20, -1), TestCase(85, 20, -5), TestCase(85, 20, -10), + TestCase(85, 20, -15), TestCase(85, 20, -20), TestCase(85, 20, -25), + TestCase(22, 20, -5), + ] + public void Truck_Decelerate(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Truck_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Truck_Special(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Truck_Cycle_Decelerate_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonV2"), + TestCase(10, 10, 25), TestCase(10, 10, 20), TestCase(10, 10, 15), + TestCase(10, 10, 10), TestCase(10, 10, 5), TestCase(10, 10, 1), + TestCase(10, 10, 0), + TestCase(10, 10, -1), TestCase(10, 10, -5), TestCase(10, 10, -10), + TestCase(10, 10, -15), TestCase(10, 10, -20), TestCase(10, 10, -25), + TestCase(20, 20, 25), TestCase(20, 20, 20), TestCase(20, 20, 15), + TestCase(20, 20, 10), TestCase(20, 20, 5), TestCase(20, 20, 1), + TestCase(20, 20, 0), + TestCase(20, 20, -1), TestCase(20, 20, -5), TestCase(20, 20, -10), + TestCase(20, 20, -15), TestCase(20, 20, -20), TestCase(20, 20, -25), + TestCase(30, 30, 25), TestCase(30, 30, 20), TestCase(30, 30, 15), + TestCase(30, 30, 10), TestCase(30, 30, 5), TestCase(30, 30, 1), + TestCase(30, 30, 0), + TestCase(30, 30, -1), TestCase(30, 30, -5), TestCase(30, 30, -10), + TestCase(30, 30, -15), TestCase(30, 30, -20), TestCase(30, 30, -25), + TestCase(40, 40, 25), TestCase(40, 40, 20), TestCase(40, 40, 15), + TestCase(40, 40, 10), TestCase(40, 40, 5), TestCase(40, 40, 1), + TestCase(40, 40, 0), + TestCase(40, 40, -1), TestCase(40, 40, -5), TestCase(40, 40, -10), + TestCase(40, 40, -15), TestCase(40, 40, -20), TestCase(40, 40, -25), + TestCase(50, 50, 25), TestCase(50, 50, 20), TestCase(50, 50, 15), + TestCase(50, 50, 10), TestCase(50, 50, 5), TestCase(50, 50, 1), + TestCase(50, 50, 0), + TestCase(50, 50, -1), TestCase(50, 50, -5), TestCase(50, 50, -10), + TestCase(50, 50, -15), TestCase(50, 50, -20), TestCase(50, 50, -25), + TestCase(60, 60, 25), TestCase(60, 60, 20), TestCase(60, 60, 15), + TestCase(60, 60, 10), TestCase(60, 60, 5), TestCase(60, 60, 1), + TestCase(60, 60, 0), + TestCase(60, 60, -1), TestCase(60, 60, -5), TestCase(60, 60, -10), + TestCase(60, 60, -15), TestCase(60, 60, -20), TestCase(60, 60, -25), + TestCase(80, 80, 25), TestCase(80, 80, 20), TestCase(80, 80, 15), + TestCase(80, 80, 10), TestCase(80, 80, 5), TestCase(80, 80, 1), + TestCase(80, 80, 0), + TestCase(80, 80, -1), TestCase(80, 80, -5), TestCase(80, 80, -10), + TestCase(80, 80, -15), TestCase(80, 80, -20), TestCase(80, 80, -25), + TestCase(85, 85, 25), TestCase(85, 85, 20), TestCase(85, 85, 15), + TestCase(85, 85, 10), TestCase(85, 85, 5), TestCase(85, 85, 1), + TestCase(85, 85, 0), + TestCase(85, 85, -1), TestCase(85, 85, -5), TestCase(85, 85, -10), + TestCase(85, 85, -15), TestCase(85, 85, -20), TestCase(85, 85, -25), + ] + public void Truck_Drive(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Truck_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Truck_Special(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Truck_Cycle_Drive_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonV2"), + TestCase(0, 40, 25), TestCase(0, 40, 20), TestCase(0, 40, 15), + TestCase(0, 40, 10), TestCase(0, 40, 5), TestCase(0, 40, 1), + TestCase(0, 40, 0), + TestCase(0, 40, -1), TestCase(0, 40, -5), TestCase(0, 40, -10), + TestCase(0, 40, -15), TestCase(0, 40, -20), TestCase(0, 40, -25), + TestCase(0, 60, 25), TestCase(0, 60, 20), TestCase(0, 60, 15), + TestCase(0, 60, 10), TestCase(0, 60, 5), TestCase(0, 60, 1), + TestCase(0, 60, 0), + TestCase(0, 60, -1), TestCase(0, 60, -5), TestCase(0, 60, -10), + TestCase(0, 60, -15), TestCase(0, 60, -20), TestCase(0, 60, -25), + TestCase(0, 85, 25), TestCase(0, 85, 20), TestCase(0, 85, 15), + TestCase(0, 85, 10), TestCase(0, 85, 5), TestCase(0, 85, 1), + TestCase(0, 85, 0), + TestCase(0, 85, -1), TestCase(0, 85, -5), TestCase(0, 85, -10), + TestCase(0, 85, -15), TestCase(0, 85, -20), TestCase(0, 85, -25), + TestCase(20, 40, 25), TestCase(20, 40, 20), TestCase(20, 40, 15), + TestCase(20, 40, 10), TestCase(20, 40, 5), TestCase(20, 40, 1), + TestCase(20, 40, 0), + TestCase(20, 40, -1), TestCase(20, 40, -5), TestCase(20, 40, -10), + TestCase(20, 40, -15), TestCase(20, 40, -20), TestCase(20, 40, -25), + TestCase(20, 60, 25), TestCase(20, 60, 20), TestCase(20, 60, 15), + TestCase(20, 60, 10), TestCase(20, 60, 5), TestCase(20, 60, 1), + TestCase(20, 60, 0), + TestCase(20, 60, -1), TestCase(20, 60, -5), TestCase(20, 60, -10), + TestCase(20, 60, -15), TestCase(20, 60, -20), TestCase(20, 60, -25), + TestCase(20, 85, 25), TestCase(20, 85, 20), TestCase(20, 85, 15), + TestCase(20, 85, 10), TestCase(20, 85, 5), TestCase(20, 85, 1), + TestCase(20, 85, 0), + TestCase(20, 85, -1), TestCase(20, 85, -5), TestCase(20, 85, -10), + TestCase(20, 85, -15), TestCase(20, 85, -20), TestCase(20, 85, -25), + TestCase(20, 22, 5), + ] + public void Truck_Accelerate_Overspeed(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Truck_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Truck_Special_Overspeed(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Truck_Cycle_Accelerate_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonV2"), + TestCase(40, 0, 25), TestCase(40, 0, 20), TestCase(40, 0, 15), + TestCase(40, 0, 10), TestCase(40, 0, 5), TestCase(40, 0, 1), + TestCase(40, 0, 0), + TestCase(40, 0, -1), TestCase(40, 0, -5), TestCase(40, 0, -10), + TestCase(40, 0, -15), TestCase(40, 0, -20), TestCase(40, 0, -25), + TestCase(60, 0, 25), TestCase(60, 0, 20), TestCase(60, 0, 15), + TestCase(60, 0, 10), TestCase(60, 0, 5), TestCase(60, 0, 1), + TestCase(60, 0, 0), + TestCase(60, 0, -1), TestCase(60, 0, -5), TestCase(60, 0, -10), + TestCase(60, 0, -15), TestCase(60, 0, -20), TestCase(60, 0, -25), + TestCase(85, 0, 25), TestCase(85, 0, 20), TestCase(85, 0, 15), + TestCase(85, 0, 10), TestCase(85, 0, 5), TestCase(85, 0, 1), + TestCase(85, 0, 0), + TestCase(85, 0, -1), TestCase(85, 0, -5), TestCase(85, 0, -10), + TestCase(85, 0, -15), TestCase(85, 0, -20), TestCase(85, 0, -25), + TestCase(40, 20, 25), TestCase(40, 20, 20), TestCase(40, 20, 15), + TestCase(40, 20, 10), TestCase(40, 20, 5), TestCase(40, 20, 1), + TestCase(40, 20, 0), + TestCase(40, 20, -1), TestCase(40, 20, -5), TestCase(40, 20, -10), + TestCase(40, 20, -15), TestCase(40, 20, -20), TestCase(40, 20, -25), + TestCase(60, 20, 25), TestCase(60, 20, 20), TestCase(60, 20, 15), + TestCase(60, 20, 10), TestCase(60, 20, 5), TestCase(60, 20, 1), + TestCase(60, 20, 0), + TestCase(60, 20, -1), TestCase(60, 20, -5), TestCase(60, 20, -10), + TestCase(60, 20, -15), TestCase(60, 20, -20), TestCase(60, 20, -25), + TestCase(85, 20, 25), TestCase(85, 20, 20), TestCase(85, 20, 15), + TestCase(85, 20, 10), TestCase(85, 20, 5), TestCase(85, 20, 1), + TestCase(85, 20, 0), + TestCase(85, 20, -1), TestCase(85, 20, -5), TestCase(85, 20, -10), + TestCase(85, 20, -15), TestCase(85, 20, -20), TestCase(85, 20, -25), + TestCase(22, 20, -5), + ] + public void Truck_Decelerate_Overspeed(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Truck_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Truck_Special_Overspeed(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Truck_Cycle_Decelerate_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonV2"), + TestCase(10, 10, 25), TestCase(10, 10, 20), TestCase(10, 10, 15), + TestCase(10, 10, 10), TestCase(10, 10, 5), TestCase(10, 10, 1), + TestCase(10, 10, 0), + TestCase(10, 10, -1), TestCase(10, 10, -5), TestCase(10, 10, -10), + TestCase(10, 10, -15), TestCase(10, 10, -20), TestCase(10, 10, -25), + TestCase(20, 20, 25), TestCase(20, 20, 20), TestCase(20, 20, 15), + TestCase(20, 20, 10), TestCase(20, 20, 5), TestCase(20, 20, 1), + TestCase(20, 20, 0), + TestCase(20, 20, -1), TestCase(20, 20, -5), TestCase(20, 20, -10), + TestCase(20, 20, -15), TestCase(20, 20, -20), TestCase(20, 20, -25), + TestCase(30, 30, 25), TestCase(30, 30, 20), TestCase(30, 30, 15), + TestCase(30, 30, 10), TestCase(30, 30, 5), TestCase(30, 30, 1), + TestCase(30, 30, 0), + TestCase(30, 30, -1), TestCase(30, 30, -5), TestCase(30, 30, -10), + TestCase(30, 30, -15), TestCase(30, 30, -20), TestCase(30, 30, -25), + TestCase(40, 40, 25), TestCase(40, 40, 20), TestCase(40, 40, 15), + TestCase(40, 40, 10), TestCase(40, 40, 5), TestCase(40, 40, 1), + TestCase(40, 40, 0), + TestCase(40, 40, -1), TestCase(40, 40, -5), TestCase(40, 40, -10), + TestCase(40, 40, -15), TestCase(40, 40, -20), TestCase(40, 40, -25), + TestCase(50, 50, 25), TestCase(50, 50, 20), TestCase(50, 50, 15), + TestCase(50, 50, 10), TestCase(50, 50, 5), TestCase(50, 50, 1), + TestCase(50, 50, 0), + TestCase(50, 50, -1), TestCase(50, 50, -5), TestCase(50, 50, -10), + TestCase(50, 50, -15), TestCase(50, 50, -20), TestCase(50, 50, -25), + TestCase(60, 60, 25), TestCase(60, 60, 20), TestCase(60, 60, 15), + TestCase(60, 60, 10), TestCase(60, 60, 5), TestCase(60, 60, 1), + TestCase(60, 60, 0), + TestCase(60, 60, -1), TestCase(60, 60, -5), TestCase(60, 60, -10), + TestCase(60, 60, -15), TestCase(60, 60, -20), TestCase(60, 60, -25), + TestCase(80, 80, 25), TestCase(80, 80, 20), TestCase(80, 80, 15), + TestCase(80, 80, 10), TestCase(80, 80, 5), TestCase(80, 80, 1), + TestCase(80, 80, 0), + TestCase(80, 80, -1), TestCase(80, 80, -5), TestCase(80, 80, -10), + TestCase(80, 80, -15), TestCase(80, 80, -20), TestCase(80, 80, -25), + TestCase(85, 85, 25), TestCase(85, 85, 20), TestCase(85, 85, 15), + TestCase(85, 85, 10), TestCase(85, 85, 5), TestCase(85, 85, 1), + TestCase(85, 85, 0), + TestCase(85, 85, -1), TestCase(85, 85, -5), TestCase(85, 85, -10), + TestCase(85, 85, -15), TestCase(85, 85, -20), TestCase(85, 85, -25), + ] + public void Truck_Drive_Overspeed(double v1, double v2, double slope) + { + var cycle = string.Format(CultureInfo.InvariantCulture, "0, {0}, {1}, {2}\n1000, {3}, {4}, {5}", v1, slope, + v1.IsEqual(0) ? 2 : 0, v2, slope, v2.IsEqual(0) ? 2 : 0); + + var slopeStr = slope > 0 ? "uhpill" : slope < 0 ? "downhill" : "level"; + var modFileName = string.Format(CultureInfo.InvariantCulture, @"Truck_{0}_{1}_{3}_{2}.vmod", v1, v2, Math.Abs(slope), + slopeStr); + + Truck_Special_Overspeed(cycle, modFileName, + string.Format(CultureInfo.InvariantCulture, "24t Truck_Cycle_Drive_{0}_{1}_{2}.vmod", v1, v2, slopeStr)); + } + + [Category("ComparisonV2"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope, + "Truck_DriverStrategy_Drive_80_slope_inc.vmod", "24t Truck_Cycle_Drive_80_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope, + "Truck_DriverStrategy_Drive_50_slope_inc.vmod", "24t Truck_Cycle_Drive_50_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope, + "Truck_DriverStrategy_Drive_30_slope_inc.vmod", "24t Truck_Cycle_Drive_30_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope, + "Truck_DriverStrategy_Drive_80_slope_dec.vmod", "24t Truck_Cycle_Drive_80_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope, + "Truck_DriverStrategy_Drive_50_slope_dec.vmod", "24t Truck_Cycle_Drive_50_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope, + "Truck_DriverStrategy_Drive_30_slope_dec.vmod", "24t Truck_Cycle_Drive_30_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope, + "Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod", "24t Truck_Cycle_Drive_80_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope, + "Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod", "24t Truck_Cycle_Drive_50_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope, + "Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod", "24t Truck_Cycle_Drive_30_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level, + "Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod", "24t Truck_Cycle_DecelerateWhileBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level, + "Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod", "24t Truck_Cycle_AccelerateWhileBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level, + "Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod", "24t Truck_Cycle_AccelerateAtBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level, + "Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod", "24t Truck_Cycle_AccelerateBeforeBrake_80_0_level.vmod" + ), + TestCase(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level, + "Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod", "24t Truck_Cycle_Drive_stop_85_stop_85_level.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_SlopeChangeBeforeStop, "Truck_DriverStrategy_SlopeChangeBeforeStop.vmod", null + ), + TestCase(SimpleDrivingCycles.CycleDriver_FrequentSlopChange, "Truck_DriverStrategy_SlopeChangeBeforeStop.vmod", null), + ] + public void Truck_Special(string cycleData, string modFileName, string compareFileName = null) { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_60_20_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_uphill_3() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_3); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_uphill_3.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_uphill_3.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_uphill_3.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_SlopeChangeDuringCoast() - { - var data = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 60, -1.15, 0", - " 70, 60, -1.85, 0", - "300, 0, -1.85, 2", - }; - - var cycle = SimpleDrivingCycles.CreateCycleData(data); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_SlopeChangeDuringCoast.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - //GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_uphill_5.vmod", - // @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_downhill_5.vmod"); - } - -// [TestMethod, TestCategory("ComparisonV2"), TestCategory("LongRunning")] -// public void Decelerate_80_0_uphill_25() -// { -// var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_25); -// var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, -// "Truck_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod"); - -// run.Run(); -// Assert.IsTrue(run.FinishedWithoutErrors); - -//// GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod", -//// @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_steep_uphill_25.vmod"); -// } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - -// GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod", -// @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_steep_uphill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_80_0_downhill_15() + var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); + var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, modFileName); + + run.Run(); + Assert.IsTrue(run.FinishedWithoutErrors); + + GraphWriter.Write(modFileName, + compareFileName != null ? @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Truck\" + compareFileName : null); + } + + [Category("ComparisonV2"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope, + "Truck_DriverStrategy_Drive_80_slope_inc.vmod", "24t Truck_Cycle_Drive_80_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope, + "Truck_DriverStrategy_Drive_50_slope_inc.vmod", "24t Truck_Cycle_Drive_50_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope, + "Truck_DriverStrategy_Drive_30_slope_inc.vmod", "24t Truck_Cycle_Drive_30_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope, + "Truck_DriverStrategy_Drive_80_slope_dec.vmod", "24t Truck_Cycle_Drive_80_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope, + "Truck_DriverStrategy_Drive_50_slope_dec.vmod", "24t Truck_Cycle_Drive_50_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope, + "Truck_DriverStrategy_Drive_30_slope_dec.vmod", "24t Truck_Cycle_Drive_30_Decreasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope, + "Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod", "24t Truck_Cycle_Drive_80_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope, + "Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod", "24t Truck_Cycle_Drive_50_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope, + "Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod", "24t Truck_Cycle_Drive_30_Dec_Increasing_Slope.vmod"), + TestCase(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level, + "Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod", "24t Truck_Cycle_DecelerateWhileBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level, + "Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod", "24t Truck_Cycle_AccelerateWhileBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level, + "Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod", "24t Truck_Cycle_AccelerateAtBrake_80_0_level.vmod"), + TestCase(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level, + "Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod", "24t Truck_Cycle_AccelerateBeforeBrake_80_0_level.vmod" + ), + TestCase(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level, + "Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod", "24t Truck_Cycle_Drive_stop_85_stop_85_level.vmod"), + ] + public void Truck_Special_Overspeed(string cycleData, string modFileName, string compareFileName = null) { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod"); + var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); + var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, modFileName, true); run.Run(); Assert.IsTrue(run.FinishedWithoutErrors); - GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_downhill_15.vmod"); + GraphWriter.Write(modFileName, + compareFileName != null + ? @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Truck_Overspeed\" + compareFileName + : null); } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_20_0_downhill_2() - { - var cycleData = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 20, -1.8, 0", - "2052, 0, -1.8, 2" - }; - var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Decelerate_20_0_downhill_2_RefLoad.vmod", - 7500.SI<Kilogram>(), 12900.SI<Kilogram>()); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - //GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod", - // @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_20_0_downhill_2_RefLoad.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Decelerate_55_43_0_downhill_RefLoad() - { - var cycleData = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 55.2, -0.6, 0", - " 500, 43.6, -0.6, 0", - " 510, 43.6, -0.3, 0", - " 623, 0, -0.2, 4" - }; - var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_Decelerate_55_43_0_downhill_RefLoad.vmod", - 7500.SI<Kilogram>(), 12900.SI<Kilogram>()); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - #endregion - - #region Drive - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_20_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_20_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_20_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_20_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_20_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_30_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_30_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_50_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_50_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - -// GraphWriter.Write("Truck_DriverStrategy_Drive_80_uphill_25.vmod", -// @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_uphill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_uphill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_uphill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_uphill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_uphill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_downhill_5() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_5.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_downhill_5.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_downhill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_downhill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_downhill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_uphill_25() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_25); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_25.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_uphill_25.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_uphill_25.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_downhill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_downhill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_downhill_15.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_10_uphill_15() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_15); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_15.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_10_uphill_15.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_uphill_15.vmod"); - } - - #endregion - - #region Slope - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_slope_inc.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_50_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_50_slope_inc.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_30_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_30_slope_inc.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_Decreasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_dec.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_slope_dec.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_Decreasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_50_Decreasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_dec.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_50_slope_dec.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_Decreasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_30_Decreasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_dec.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_30_slope_dec.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_Decreasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_80_Dec_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_Dec_Increasing_Slope.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_50_Dec_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_Dec_Increasing_Slope.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_30_Dec_Increasing_Slope() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_Dec_Increasing_Slope.vmod"); - } - - #endregion - - #region Misc - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_DecelerateWhileBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_DecelerateWhileBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_AccelerateWhileBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_AccelerateWhileBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_AccelerateAtBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_AccelerateAtBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_AccelerateBeforeBrake_80_0_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_AccelerateBeforeBrake_80_0_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Drive_stop_85_stop_85_level() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_stop_85_stop_85_level.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_48_52_beforeStop_lefel() - { - var data = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 49.9, -5, 0", - "200, 52, -5, 0", - "300, 0, -5, 2", - }; - - var cycle = SimpleDrivingCycles.CreateCycleData(data); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_48_52_beforeStop_level.vmod", - 7500.SI<Kilogram>(), 19000.SI<Kilogram>()); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - //GraphWriter.Write("Truck_DriverStrategy_Accelerate_48_52_beforeStop_level.vmod"); - } - - #endregion - - #region AccelerateOverspeed - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_downhill_5_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_downhill_3_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_3); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_3.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_85_downhill_1_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_1); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_1.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_60_downhill_5_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_60_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_60_downhill_3_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_3); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_60_downhill_3.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_60_downhill_1_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_1); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_60_downhill_1.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_40_downhill_5_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_5); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_40_downhill_5.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_40_downhill_3_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_3); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_40_downhill_3.vmod"); - } - - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_0_40_downhill_1_overspeed() - { - var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_1); - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod", true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - - GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod", - @"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_40_downhill_1.vmod"); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_Accelerate_Decelerate_Downhill_overspeed() - { - var cycleData = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 60, 0, 0", - " 10, 60, -6, 0", - "100, 55, -6, 0", - "300, 55, -6, 0" - }; - var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, - "Truck_DriverStrategy_Accelerate_Decelerate-overspeed.vmod", - true); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_SlopeChangeBeforeStop() - { - var cycleData = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 60, -1.4, 0", - "298, 60, -1.7, 0", - "300, 0, -1.7, 4", - }; - var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_SlopeChangeBeforeStop.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - [TestMethod, TestCategory("ComparisonV2")] - public void Truck_FrequentSlopeChanges() - { - var cycleData = new[] { - // <s>,<v>,<grad>,<stop> - " 0, 60, 0, 0", - " 10, 60, -6, 0", - "100, 55, -6, 0", - "300, 55, -6, 0" - }; - var cycle = SimpleDrivingCycles.CreateCycleData(cycleData); - - var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_SlopeChangeBeforeStop.vmod"); - - run.Run(); - Assert.IsTrue(run.FinishedWithoutErrors); - } - - #endregion } } \ No newline at end of file diff --git a/VectoCore/VectoCoreTest/Integration/SimpleDrivingCycles.cs b/VectoCore/VectoCoreTest/Integration/SimpleDrivingCycles.cs index ce5e964c72..237eaffaeb 100644 --- a/VectoCore/VectoCoreTest/Integration/SimpleDrivingCycles.cs +++ b/VectoCore/VectoCoreTest/Integration/SimpleDrivingCycles.cs @@ -52,418 +52,6 @@ namespace TUGraz.VectoCore.Tests.Integration return DrivingCycleDataReader.ReadFromStream(cycleData, CycleType.DistanceBased, "", false); } - #region Accelerate - - public static readonly string[] CycleAccelerate_20_60_Level = { - // <s>,<v>,<grad>,<stop> - " 0, 20, 0, 0", - " 100, 60, 0, 0", - "1000, 60, 0, 0" - }; - - public static readonly string[] CycleAccelerate_20_60_uphilll_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, 5, 0", - " 100, 60, 5, 0", - "1000, 60, 5, 0" - }; - - public static readonly string[] CycleAccelerate_20_60_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, -5, 0", - " 100, 60, -5, 0", - "1000, 60, -5, 0" - }; - - public static readonly string[] CycleAccelerate_20_60_uphill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, 25, 0", - " 100, 60, 25, 0", - "1000, 60, 25, 0" - }; - - public static readonly string[] CycleAccelerate_20_60_downhill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, -25, 0", - " 100, 60, -25, 0", - "1000, 60, -25, 0" - }; - - public static readonly string[] CycleAccelerate_20_60_uphill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, 15, 0", - " 100, 60, 15, 0", - "1000, 60, 15, 0" - }; - - public static readonly string[] CycleAccelerate_20_60_downhill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, -15, 0", - " 100, 60, -15, 0", - "1000, 60, -15, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_level = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - "1000, 85, 0, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_uphill_1 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 1, 2", - "1000, 85, 1, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_uphill_2 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 2, 2", - "1000, 85, 2, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 5, 2", - "1000, 85, 5, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 85, -5, 0", - "1000, 85, -5, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_downhill_3 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 85, -3, 0", - "1000, 85, -3, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_downhill_1 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 85, -1, 0", - "1000, 85, -1, 0" - }; - - public static readonly string[] CycleAccelerate_0_60_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 60, -5, 0", - "1000, 60, -5, 0" - }; - - public static readonly string[] CycleAccelerate_0_60_downhill_3 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 60, -3, 0", - "1000, 60, -3, 0" - }; - - public static readonly string[] CycleAccelerate_0_60_downhill_1 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 60, -1, 0", - "1000, 60, -1, 0" - }; - - public static readonly string[] CycleAccelerate_0_40_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 40, -5, 0", - "1000, 40, -5, 0" - }; - - public static readonly string[] CycleAccelerate_0_40_downhill_3 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 40, -3, 0", - "1000, 40, -3, 0" - }; - - public static readonly string[] CycleAccelerate_0_40_downhill_1 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 40, -1, 0", - "1000, 40, -1, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_uphill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - " 0, 85, 25, 0", - "1000, 85, 25, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_downhill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, -25, 2", - "1000, 85, -25, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_uphill_10 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 10, 2", - "1000, 85, 10, 0" - }; - - public static readonly string[] CycleAccelerate_0_85_downhill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 0, -15, 2", - "1000, 85, -15, 0" - }; - - public static readonly string[] CycleAccelerate_stop_0_85_level = { - // <s>,<v>,<grad>,<stop> - " 0, 0, 0, 2", - "1000, 85, 0, 0" - }; - - public static readonly string[] CycleAccelerate_20_22_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 20, 5, 0", - " 100, 22, 5, 0", - " 200, 22, 5, 0" - }; - - #endregion - - #region Decelerate - - public static readonly string[] CycleDecelerate_22_20_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 22, -5, 0", - " 100, 20, -5, 0", - " 300, 20, -5, 0" - }; - - public static readonly string[] CycleDecelerate_60_20_level = { - // <s>,<v>,<grad>,<stop> - " 0, 60, 0, 0", - "1000, 20, 0, 0", - "1100, 20, 0, 0" - }; - - public static readonly string[] CycleDecelerate_45_0_level = { - // <s>,<v>,<grad>,<stop> - " 0, 45, 0, 0", - " 200, 0, 0, 2" - }; - - public static readonly string[] CycleDecelerate_45_0_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 45, 5, 0", - " 200, 0, 5, 2" - }; - - public static readonly string[] CycleDecelerate_45_0_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 45, -5, 0", - " 200, 0, -5, 2" - }; - - public static readonly string[] CycleDecelerate_60_20_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 60, 5, 0", - "1000, 20, 5, 0", - "1100, 20, 5, 0" - }; - - public static readonly string[] CycleDecelerate_60_20_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 60, -5, 0", - "1000, 20, -5, 0", - "1100, 20, -5, 0" - }; - - public static readonly string[] CycleDecelerate_60_20_uphill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 60, 25, 0", - "1000, 20, 25, 0" - }; - - public static readonly string[] CycleDecelerate_60_20_downhill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 60, -25, 0", - "1000, 20, -25, 0", - "1100, 20, -25, 0" - }; - - public static readonly string[] CycleDecelerate_60_20_uphill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 60, 15, 0", - "1000, 20, 15, 0", - "1100, 20, 0, 0" - }; - - public static readonly string[] CycleDecelerate_60_20_downhill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 60, -15, 0", - " 800, 20, -15, 0", - "1000, 20, -15, 0" - }; - - public static readonly string[] CycleDecelerate_80_0_level = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 0, 0", - "1000, 0, 0, 2" -// "1000, 0, 5, 2", - }; - - public static readonly string[] CycleDecelerate_80_0_uphill_3 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 3, 0", - "1000, 0, 3, 2" -// "1000, 0, 5, 2", - }; - - public static readonly string[] CycleDecelerate_80_0_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 5, 0", - "1000, 0, 5, 2" -// "1000, 0, 5, 2", - }; - - public static readonly string[] CycleDecelerate_80_0_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, -5, 0", - " 500, 0, -5, 2" - }; - - public static readonly string[] CycleDecelerate_80_0_uphill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 25, 0", - " 500, 0, 25, 2" - }; - - public static readonly string[] CycleDecelerate_80_0_downhill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, -25, 0", - "1000, 0, -25, 2" - }; - - public static readonly string[] CycleDecelerate_80_0_uphill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 15, 0", - "1000, 0, 15, 0" - }; - - public static readonly string[] CycleDecelerate_80_0_uphill_20 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 20, 0", - "1000, 0, 20, 0" - }; - - public static readonly string[] CycleDecelerate_80_0_downhill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, -15, 0", - "1000, 0, -15, 2" - }; - - #endregion - - #region Drive - - public static readonly string[] CycleDrive_80_level = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 0, 0", - "1000, 80, 0, 0" - }; - - public static readonly string[] CycleDrive_80_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 5, 0", - "1000, 80, 5, 0" - }; - - public static readonly string[] CycleDrive_80_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, -5, 0", - " 1000, 80, -5, 0" - }; - - public static readonly string[] CycleDrive_20_downhill_15 = { - // <s>, <v>, <grad>, <stop> - " 0, 20, -15, 0", - " 500, 20, -25, 0" - }; - - public static readonly string[] CycleDrive_30_downhill_15 = { - // <s>, <v>, <grad>, <stop> - " 0, 30, -15, 0", - " 500, 30, -15, 0" - }; - - public static readonly string[] CycleDrive_50_downhill_15 = { - // <s>, <v>, <grad>, <stop> - " 0, 50, -15, 0", - " 500, 50, -15, 0" - }; - - public static readonly string[] CycleDrive_80_uphill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 25, 0", - " 500, 80, 25, 0" - }; - - public static readonly string[] CycleDrive_80_downhill_15 = { - // <s>, <v>, <grad>, <stop> - " 0, 80, -15, 0", - " 500, 80, -15, 0" - }; - - public static readonly string[] CycleDrive_80_uphill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 80, 15, 0", - " 500, 80, 15, 0" - }; - - public static readonly string[] CycleDrive_10_level = { - // <s>,<v>,<grad>,<stop> - " 0, 10, 0, 0", - "200, 10, 0, 0" - }; - - public static readonly string[] CycleDrive_10_uphill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 10, 5, 0", - "200, 10, 5, 0" - }; - - public static readonly string[] CycleDrive_10_downhill_5 = { - // <s>,<v>,<grad>,<stop> - " 0, 10, -5, 0", - " 200, 10, -5, 0" - }; - - public static readonly string[] CycleDrive_10_downhill_25 = { - // <s>, <v>, <grad>, <stop> - " 0, 10, -25, 0", - " 200, 10, -25, 0" - }; - - public static readonly string[] CycleDrive_10_uphill_25 = { - // <s>,<v>,<grad>,<stop> - " 0, 10, 25, 0", - " 200, 10, 25, 0" - }; - - public static readonly string[] CycleDrive_10_downhill_15 = { - // <s>, <v>, <grad>, <stop> - " 0, 10, -15, 0", - " 200, 10, -15, 0" - }; - - public static readonly string[] CycleDrive_10_uphill_15 = { - // <s>,<v>,<grad>,<stop> - " 0, 10, 15, 0", - " 200, 10, 15, 0" - }; - - #endregion - #region Misc public const string CycleDrive_80_Increasing_Slope = @@ -672,6 +260,19 @@ namespace TUGraz.VectoCore.Tests.Integration 2000, 0, 0, 2 3000, 85, 0, 0"; + public const string CycleDrive_SlopeChangeBeforeStop = + // <s>,<v>,<grad>,<stop> + @" 0, 60, -1.4, 0 + 298, 60, -1.7, 0 + 300, 0, -1.7, 4"; + + public const string CycleDriver_FrequentSlopChange = + // <s>,<v>,<grad>,<stop> + @" 0, 60, 0, 0 + 10, 60, -6, 0 + 100, 55, -6, 0 + 300, 55, -6, 0"; + #endregion public static DrivingCycleData ReadDeclarationCycle(string missionType) diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs index 158cc4ed99..a8d28b6820 100644 --- a/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs +++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs @@ -29,12 +29,9 @@ * Martin Rexeis, rexeis@ivt.tugraz.at, IVT, Graz University of Technology */ -using System; using System.Collections.Generic; using System.Data; -using System.IO; using System.Linq; -using System.Reflection; using NUnit.Framework; using TUGraz.VectoCommon.Models; using TUGraz.VectoCommon.Utils; @@ -63,12 +60,6 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent private const string TruckEngine = @"TestData\Components\40t_Long_Haul_Truck.veng"; - [TestCase] - public static void ClassInitialize(TestContext ctx) - { - AppDomain.CurrentDomain.SetData("DataDirectory", Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)); - } - [TestCase] public void TestEngineHasOutPort() { -- GitLab