Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit 9d188c7a authored by Harald MARTINI's avatar Harald MARTINI
Browse files

added PrimaryBus and Completed Bus RunDataFactories

parent 55a66919
No related branches found
No related tags found
No related merge requests found
......@@ -291,5 +291,39 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
return simulationRunData;
}
}
public abstract class DeclarationModeCompletedBusRunDataFactory
{
public abstract class CompletedBusBase : IVectoRunDataFactory
{
#region Implementation of IVectoRunDataFactory
public IEnumerable<VectoRunData> NextRun()
{
throw new NotImplementedException();
}
#endregion
}
public class Conventional : CompletedBusBase { }
public class HEV_S2 : CompletedBusBase { }
public class HEV_S3 : CompletedBusBase { }
public class HEV_S4 : CompletedBusBase { }
public class HEV_S_IEPC : CompletedBusBase { }
public class HEV_P1 : CompletedBusBase { }
public class HEV_P2 : CompletedBusBase { }
public class HEV_P2_5 : CompletedBusBase { }
public class HEV_P3 : CompletedBusBase { }
public class HEV_P4 : CompletedBusBase { }
public class PEV_E1 : CompletedBusBase { }
public class PEV_E2 : CompletedBusBase { }
public class PEV_E3 : CompletedBusBase { }
public class PEV_E4 : CompletedBusBase { }
public class PEV_E_IEPC : CompletedBusBase { }
}
}
......@@ -233,10 +233,13 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
public class DeclarationModeHeavyLorryRunDataFactory
/// <summary>
/// This class is just used to improve the readability
/// </summary>
public abstract class DeclarationModeHeavyLorryRunDataFactory
{
public abstract class LorryBase : IVectoRunDataFactory
{
#region Implementation of IVectoRunDataFactory
......@@ -249,7 +252,6 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
#endregion
}
public class Conventional : LorryBase
{
......@@ -270,6 +272,11 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
}
public class HEV_S_IEPC : LorryBase
{
}
public class HEV_P1 : LorryBase
{
......@@ -295,8 +302,24 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
}
public class PEV_E2 : LorryBase
{
}
public class PEV_E3 : LorryBase
{
}
public class PEV_E4 : LorryBase
{
}
public class PEV_E_IEPC : LorryBase
{
}
}
......
......@@ -173,5 +173,96 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
mission, InputDataProvider.JobInputData.Vehicle, simulationRunData);
return simulationRunData;
}
}
public abstract class DeclarationModePrimaryBusRunDataFactory
{
public abstract class PrimaryBusBase : IVectoRunDataFactory
{
#region Implementation of IVectoRunDataFactory
public IEnumerable<VectoRunData> NextRun()
{
throw new NotImplementedException();
}
#endregion
}
public class Conventional : PrimaryBusBase
{
}
public class HEV_S2 : PrimaryBusBase
{
}
public class HEV_S3 : PrimaryBusBase
{
}
public class HEV_S4 : PrimaryBusBase
{
}
public class HEV_S_IEPC : PrimaryBusBase
{
}
public class HEV_P1 : PrimaryBusBase
{
}
public class HEV_P2 : PrimaryBusBase
{
}
public class HEV_P2_5 : PrimaryBusBase
{
}
public class HEV_P3 : PrimaryBusBase
{
}
public class HEV_P4 : PrimaryBusBase
{
}
public class PEV_E2 : PrimaryBusBase
{
}
public class PEV_E3 : PrimaryBusBase
{
}
public class PEV_E4 : PrimaryBusBase
{
}
public class PEV_E_IEPC : PrimaryBusBase
{
}
}
}
......@@ -16,6 +16,8 @@ namespace TUGraz.VectoCore.InputData.Reader
{
public interface IInternalRunDataFactoryFactory
{
IVectoRunDataFactory CreateDeclarationCompletedBusRunDataFactory(VehicleCategory vehicleType, VectoSimulationJobType jobType,
ArchitectureID archId, bool exempted, bool iepc, bool ihpc);
IVectoRunDataFactory CreateDeclarationRunDataFactory(VehicleCategory vehicleType, VectoSimulationJobType jobType,
ArchitectureID archId, bool exempted, bool iepc, bool ihpc);
}
......@@ -60,10 +62,19 @@ namespace TUGraz.VectoCore.InputData.Reader
private IVectoRunDataFactory CreateRunDataReader(IMultistageVIFInputData multistageVifInputData, IDeclarationReport report)
{
var vehicle = multistageVifInputData.MultistageJobInputData.PrimaryVehicleData.Vehicle;
if (multistageVifInputData.VehicleInputData == null) {
return new DeclarationModeCompletedMultistageBusVectoRunDataFactory(
multistageVifInputData.MultistageJobInputData,
report);
var ihpc = (vehicle.Components?.ElectricMachines?.Entries)?.Count(electric => electric.ElectricMachine.IHPCType != "None") > 0;
var iepc = (vehicle.Components?.IEPC != null);
return _internalFactory.CreateDeclarationRunDataFactory(vehicle.VehicleCategory,
vehicle.VehicleType,
vehicle.ArchitectureID,
vehicle.ExemptedVehicle, iepc, ihpc);
//return new DeclarationModeCompletedMultistageBusVectoRunDataFactory(
// multistageVifInputData.MultistageJobInputData,
// report);
}
else {
return new DeclarationModeMultistageBusVectoRunDataFactory(multistageVifInputData, report);
......@@ -72,21 +83,7 @@ namespace TUGraz.VectoCore.InputData.Reader
private IVectoRunDataFactory CreateRunDataReader(IDeclarationInputDataProvider declDataProvider, IDeclarationReport report)
{
//var vehicleCategory = declDataProvider.JobInputData.Vehicle.VehicleCategory;
//if (vehicleCategory.IsLorry()) {
// return new DeclarationModeTruckVectoRunDataFactory(declDataProvider, report);
//}
//if (vehicleCategory.IsBus())
// switch (declDataProvider.JobInputData.Vehicle.VehicleCategory)
// {
// case VehicleCategory.HeavyBusCompletedVehicle:
// return new DeclarationModeCompletedBusVectoRunDataFactory(declDataProvider, report);
// case VehicleCategory.HeavyBusPrimaryVehicle:
// return new DeclarationModePrimaryBusVectoRunDataFactory(declDataProvider, report);
// default:
// break;
// }
//TODO: encapsulate arguments into object
var vehicle = declDataProvider.JobInputData.Vehicle;
try {
......
......@@ -24,11 +24,19 @@ namespace TUGraz.VectoCore.InputData.Reader
Bind<IVectoRunDataFactoryFactory>().To<VectoRunDataFactoryFactory>().InSingletonScope();
Bind<IInternalRunDataFactoryFactory>().ToFactory(() => new CombineArgumentsToNameInstanceProvider(
_vehicleStringHelper.CreateName,
6, 6,
typeof(IInternalRunDataFactoryFactory).GetMethod(nameof(IInternalRunDataFactoryFactory
.CreateDeclarationRunDataFactory)))).InSingletonScope();
Bind<IInternalRunDataFactoryFactory>().ToFactory(
() => new CombineArgumentsToNameInstanceProvider(
_vehicleStringHelper.CreateName,
6, 6,
typeof(IInternalRunDataFactoryFactory)
.GetMethod(nameof(IInternalRunDataFactoryFactory
.CreateDeclarationRunDataFactory)),
typeof(IInternalRunDataFactoryFactory)
.GetMethod(nameof(IInternalRunDataFactoryFactory
.CreateDeclarationCompletedBusRunDataFactory))
)
)
.InSingletonScope();
#region Lorries
......@@ -48,6 +56,11 @@ namespace TUGraz.VectoCore.InputData.Reader
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S4));
Bind<IVectoRunDataFactory>().To<DeclarationModeHeavyLorryRunDataFactory.HEV_S_IEPC>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S_IEPC));
Bind<IVectoRunDataFactory>().To<DeclarationModeHeavyLorryRunDataFactory.HEV_P1>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P1));
......@@ -68,8 +81,125 @@ namespace TUGraz.VectoCore.InputData.Reader
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P4));
Bind<IVectoRunDataFactory>().To<DeclarationModeHeavyLorryRunDataFactory.PEV_E2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E2));
Bind<IVectoRunDataFactory>().To<DeclarationModeHeavyLorryRunDataFactory.PEV_E3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E3));
Bind<IVectoRunDataFactory>().To<DeclarationModeHeavyLorryRunDataFactory.PEV_E4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E4));
Bind<IVectoRunDataFactory>().To<DeclarationModeHeavyLorryRunDataFactory.PEV_E_IEPC>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.Lorry, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E_IEPC));
#endregion
#region PrimaryBus
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.Conventional>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.ConventionalVehicle));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_S2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S2));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_S3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S3));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_S4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S4));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_S_IEPC>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S_IEPC));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_P1>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P1));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_P2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P2));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_P2_5>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P2_5));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_P3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P3));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.HEV_P4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P4));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.PEV_E2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E2));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.PEV_E3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E3));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.PEV_E4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E4));
Bind<IVectoRunDataFactory>().To<DeclarationModePrimaryBusRunDataFactory.PEV_E_IEPC>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.PrimaryBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E_IEPC));
#endregion
#region CompletedBus
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.Conventional>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ConventionalVehicle,
ArchitectureID.UNKNOWN));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_S2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S2));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_S3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S3));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_S4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S4));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_S_IEPC>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.SerialHybridVehicle,
ArchitectureID.S_IEPC));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_P1>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P1));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_P2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P2));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_P2_5>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P2_5));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_P3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P3));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.HEV_P4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.ParallelHybridVehicle,
ArchitectureID.P4));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E2>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E2));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E3>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E3));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E4>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E4));
Bind<IVectoRunDataFactory>().To<DeclarationModeCompletedBusRunDataFactory.PEV_E_IEPC>().Named(
_vehicleStringHelper.GetName(VehicleCategoryHelper.CompletedBus, VectoSimulationJobType.BatteryElectricVehicle,
ArchitectureID.E_IEPC));
#endregion
}
#endregion
......
......@@ -38,6 +38,7 @@ namespace TUGraz.VectoCore.Tests.InputData.RunDataFactory
Assert.IsTrue(result.GetType() == expectedType);
}
#region HeavyLorry
[TestCase()]
public void ConventionalHeavyLorryTest()
{
......@@ -75,6 +76,15 @@ namespace TUGraz.VectoCore.Tests.InputData.RunDataFactory
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.HEV_S4));
}
[TestCase()]
public void HEV_S_IEPC_HeavyLorryTest()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S_IEPC)
.Lorry();
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.HEV_S_IEPC));
}
[TestCase()]
public void HEV_P1_HeavyLorryTest()
{
......@@ -118,6 +128,305 @@ namespace TUGraz.VectoCore.Tests.InputData.RunDataFactory
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.HEV_P4));
}
[TestCase()]
public void PEV_E2_HeavyLorryTest()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E2)
.Lorry();
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.PEV_E2));
}
[TestCase()]
public void PEV_E3_HeavyLorryTest()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E3)
.Lorry();
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.PEV_E3));
}
[TestCase()]
public void PEV_E4_HeavyLorryTest()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E4)
.Lorry();
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.PEV_E4));
}
[TestCase()]
public void PEV_E_IEPC_HeavyLorryTest()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E_IEPC)
.Lorry();
CreateRunDataFactory(input, typeof(DeclarationModeHeavyLorryRunDataFactory.PEV_E_IEPC));
}
#endregion HeavyLorry
#region PrimaryBus
[TestCase()]
public void ConventionalPrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.Conventional()
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.Conventional));
}
[TestCase()]
public void HEV_S2_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S2)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_S2));
}
[TestCase()]
public void HEV_S3_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S3)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_S3));
}
[TestCase()]
public void HEV_S4_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S4)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_S4));
}
[TestCase()]
public void HEV_S_IEPC_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S_IEPC)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_S_IEPC));
}
[TestCase()]
public void HEV_P1_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P1)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_P1));
}
[TestCase()]
public void HEV_P2_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S2)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_S2));
}
[TestCase()]
public void HEV_P3_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P3)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_P3));
}
[TestCase()]
public void HEV_P2_5_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P2_5)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_P2_5));
}
[TestCase()]
public void HEV_P4_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P4)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.HEV_P4));
}
[TestCase()]
public void PEV_E2_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E2)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.PEV_E2));
}
[TestCase()]
public void PEV_E3_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E3)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.PEV_E3));
}
[TestCase()]
public void PEV_E4_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E4)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.PEV_E4));
}
[TestCase()]
public void PEV_E_IEPC_PrimaryBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E_IEPC)
.PrimaryBus();
CreateRunDataFactory(input, typeof(DeclarationModePrimaryBusRunDataFactory.PEV_E_IEPC));
}
#endregion PrimaryBus
[TestCase()]
public void ConventionalCompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.Conventional()
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.Conventional));
}
[TestCase()]
public void HEV_S2_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S2)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_S2));
}
[TestCase()]
public void HEV_S3_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S3)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_S3));
}
[TestCase()]
public void HEV_S4_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S4)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_S4));
}
[TestCase()]
public void HEV_S_IEPC_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S_IEPC)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_S_IEPC));
}
[TestCase()]
public void HEV_P1_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P1)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_P1));
}
[TestCase()]
public void HEV_P2_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.S2)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_S2));
}
[TestCase()]
public void HEV_P3_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P3)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_P3));
}
[TestCase()]
public void HEV_P2_5_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P2_5)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_P2_5));
}
[TestCase()]
public void HEV_P4_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.HEV(ArchitectureID.P4)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.HEV_P4));
}
[TestCase()]
public void PEV_E2_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E2)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.PEV_E2));
}
[TestCase()]
public void PEV_E3_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E3)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.PEV_E3));
}
[TestCase()]
public void PEV_E4_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E4)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.PEV_E4));
}
[TestCase()]
public void PEV_E_IEPC_CompletedBus()
{
var input = new Mock<IDeclarationInputDataProvider>()
.PEV(ArchitectureID.E_IEPC)
.CompletedBus();
CreateRunDataFactory(input, typeof(DeclarationModeCompletedBusRunDataFactory.PEV_E_IEPC));
}
}
internal static class InputDataProviderMockExtension
......@@ -133,14 +442,20 @@ namespace TUGraz.VectoCore.Tests.InputData.RunDataFactory
internal static Mock<IDeclarationInputDataProvider> HEV(this Mock<IDeclarationInputDataProvider> mock, ArchitectureID arch)
{
mock.Setup(p => p.JobInputData.Vehicle.ArchitectureID).Returns(arch);
mock.Setup(p => p.JobInputData.JobType).Returns(arch.ToString().StartsWith("P")
? VectoSimulationJobType.ParallelHybridVehicle
: VectoSimulationJobType.SerialHybridVehicle);
return mock;
}
internal static Mock<IDeclarationInputDataProvider> PEV(this Mock<IDeclarationInputDataProvider> mock, ArchitectureID arch)
{
mock.Setup(p => p.JobInputData.Vehicle.ArchitectureID).Returns(arch);
mock.Setup(p => p.JobInputData.JobType).Returns(
VectoSimulationJobType.BatteryElectricVehicle);
return mock;
}
internal static Mock<IDeclarationInputDataProvider> Lorry(this Mock<IDeclarationInputDataProvider> mock)
{
mock.Setup(provider => provider.JobInputData.Vehicle.VehicleCategory)
......@@ -148,6 +463,18 @@ namespace TUGraz.VectoCore.Tests.InputData.RunDataFactory
return mock;
}
internal static Mock<IDeclarationInputDataProvider> PrimaryBus(this Mock<IDeclarationInputDataProvider> mock)
{
mock.Setup(p => p.JobInputData.Vehicle.VehicleCategory).Returns(VehicleCategory.HeavyBusPrimaryVehicle);
return mock;
}
internal static Mock<IDeclarationInputDataProvider> CompletedBus(this Mock<IDeclarationInputDataProvider> mock)
{
mock.Setup(p => p.JobInputData.Vehicle.VehicleCategory).Returns(VehicleCategory.HeavyBusCompletedVehicle);
return mock;
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment