Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS will be completely phased out by mid-2025. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit b4d840da authored by Franz KOBER josef's avatar Franz KOBER josef
Browse files

adjusted multistage consolidate class and added additional tests

parent e31b58d2
No related branches found
No related tags found
No related merge requests found
Showing
with 301 additions and 10 deletions
......@@ -681,7 +681,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
var checkAirdragModified = false;
var validAirdragEntries = true;
var stages = _manufacturingStages.Reverse();
var t = _manufacturingStages.ToList();
var stages = _manufacturingStages.Reverse().ToList();
foreach (var manufacturingStage in stages) {
if (manufacturingStage.Vehicle?.Components?.AirdragInputData != null && !checkAirdragModified ) {
checkAirdragModified = true;
......@@ -1299,10 +1301,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
private IList<Tuple<HeatPumpType, HeatPumpMode>> GetHeatPumpPassengerCompartments()
{
if (_manufacturingStages?.Any() != true)
return null;
return null;
return _manufacturingStages?.First()?.Vehicle?.Components?.BusAuxiliaries?.HVACAux
?.HeatPumpPassengerCompartments;
foreach (var entry in _manufacturingStages) {
if (entry.Vehicle?.Components?.BusAuxiliaries?.HVACAux?.HeatPumpPassengerCompartments != null)
return entry.Vehicle.Components.BusAuxiliaries.HVACAux.HeatPumpPassengerCompartments;
}
return null;
}
......@@ -1342,6 +1348,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl
public override bool IsInputDataComplete(VectoSimulationJobType jobType)
{
return MethodComplete(IsCorrectSystemConfiguration(), nameof(IsCorrectSystemConfiguration))
&& InputComplete(HeatPumpTypeDriverCompartment, nameof(HeatPumpTypeDriverCompartment))
&& InputComplete(HeatPumpModeDriverCompartment, nameof(HeatPumpModeDriverCompartment))
&& InputComplete(HeatPumpPassengerCompartments, nameof(HeatPumpPassengerCompartments))
&& InputComplete(AuxHeaterPower, nameof(AuxHeaterPower))
&& InputComplete(DoubleGlazing, nameof(DoubleGlazing))
&& InputComplete(AdjustableAuxiliaryHeater, nameof(AdjustableAuxiliaryHeater))
......
......@@ -103,9 +103,221 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage
var validator = new XMLValidator(xmlReader);
Assert.IsTrue(validator.ValidateXML(VectoCore.Utils.XmlDocumentType.MultistageOutputData), validator.ValidationError);
}
}
#region VIF result file test
[TestCase(VIFInputFile, InputFilePath, 1)]
public void TestVifGeneration(string vifFilename, string inputFilename, int numRuns)
{
//Input files
var inputReader = XmlReader.Create(inputFilename);
var inputDataProvider = xmlInputReader.CreateDeclaration(inputReader);
var vehicle = inputDataProvider.JobInputData.Vehicle;
var vifReader = XmlReader.Create(vifFilename);
var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider;
var numberOfManufacturingStages = vifDataProvider?.JobInputData.ManufacturingStages?.Count ?? 0;
var writer = new FileOutputVIFWriter(vifResult, numberOfManufacturingStages);
var inputData = new XMLDeclarationVIFInputData(vifDataProvider, vehicle);
var factory = new SimulatorFactory(ExecutionMode.Declaration, inputData, writer);
var jobContainer = new JobContainer(new MockSumWriter());
var runs = factory.SimulationRuns().ToList();
Assert.AreEqual(numRuns, runs.Count);
foreach (var run in runs)
{
jobContainer.AddRun(run);
}
jobContainer.Execute();
jobContainer.WaitFinished();
var progress = jobContainer.GetProgress();
Assert.IsTrue(progress.All(r => r.Value.Success), string.Concat<Exception>(progress.Select(r => r.Value.Error)));
using (var xmlReader = XmlReader.Create(writer.XMLMultistageReportFileName))
{
var validator = new XMLValidator(xmlReader);
Assert.IsTrue(validator.ValidateXML(VectoCore.Utils.XmlDocumentType.MultistageOutputData), validator.ValidationError);
}
TestNewVifData(writer.XMLMultistageReportFileName);
}
private void TestNewVifData(string filePath)
{
var vifReader = XmlReader.Create(filePath);
var vifDataProvider = xmlInputReader.Create(vifReader) as IMultistageBusInputDataProvider;
Assert.AreEqual(3, vifDataProvider.JobInputData.ManufacturingStages.Count());
TestVifStage2Data(vifDataProvider.JobInputData.ManufacturingStages[0]);
TestVifStage3Data(vifDataProvider.JobInputData.ManufacturingStages[1]);
TestVifStage4Data(vifDataProvider.JobInputData.ManufacturingStages[2]);
}
private void TestVifStage2Data(IManufacturingStageInputData data)
{
Assert.AreEqual(2, data.StageCount);
TestSignatureData(data.HashPreviousStage, "nI+57QQtWA2rFqJTZ41t0XrXcJbcGmc7j4E66iGJyT0=",
"#PIF-d10aff76c5d149948046");
Assert.AreEqual("Intermediate Manufacturer 1", data.Vehicle.Manufacturer);
Assert.AreEqual("Intermediate Manufacturer Address 1", data.Vehicle.ManufacturerAddress);
Assert.AreEqual("VEH-1234567890", data.Vehicle.VIN);
Assert.AreEqual(DateTime.Parse("2018-02-15T11:00:00Z").ToUniversalTime(), data.Vehicle.Date);
Assert.AreEqual(VehicleDeclarationType.interim, data.Vehicle.VehicleDeclarationType);
Assert.AreEqual(null, data.Vehicle.ADAS);
Assert.AreEqual(null, data.Vehicle.Components);
TestApplicationInformation(data.ApplicationInformation, "!!NOT FOR CERTIFICATION!!",
"2021-01-12T07:20:08.0187663Z");
TestSignatureData(data.Signature, "BMpFCKh1bu/YPwYj37kJK1uCrv++BTLf2OUZcOt43Os=",
"#RESULT-6f30c7fe665a47938f6b");
}
private void TestVifStage3Data(IManufacturingStageInputData data)
{
Assert.AreEqual(3, data.StageCount);
TestSignatureData(data.HashPreviousStage, "BMpFCKh1bu/YPwYj37kJK1uCrv++BTLf2OUZcOt43Os=",
"#RESULT-6f30c7fe665a47938f6b");
Assert.AreEqual("Intermediate Manufacturer 2", data.Vehicle.Manufacturer);
Assert.AreEqual("Intermediate Manufacturer Address 2", data.Vehicle.ManufacturerAddress);
Assert.AreEqual("VEH-2234567890", data.Vehicle.VIN);
Assert.AreEqual(DateTime.Parse("2021-02-13T07:20:08.0187663Z").ToUniversalTime(), data.Vehicle.Date);
Assert.AreEqual(VehicleDeclarationType.final, data.Vehicle.VehicleDeclarationType);
Assert.AreEqual(true, data.Vehicle.ADAS.EngineStopStart);
Assert.AreEqual(EcoRollType.WithEngineStop, data.Vehicle.ADAS.EcoRoll);
Assert.AreEqual(PredictiveCruiseControlType.Option_1_2, data.Vehicle.ADAS.PredictiveCruiseControl);
Assert.AreEqual(null, data.Vehicle.ADAS.ATEcoRollReleaseLockupClutch);
var aux = data.Vehicle.Components.BusAuxiliaries;
Assert.AreEqual(true, aux.ElectricConsumers.InteriorLightsLED);
Assert.AreEqual(true, aux.ElectricConsumers.DayrunninglightsLED);
Assert.AreEqual(false, aux.ElectricConsumers.PositionlightsLED);
Assert.AreEqual(false, aux.ElectricConsumers.BrakelightsLED);
Assert.AreEqual(true, aux.ElectricConsumers.HeadlightsLED);
var hvac = data.Vehicle.Components.BusAuxiliaries.HVACAux;
Assert.AreEqual(BusHVACSystemConfiguration.Configuration1, hvac.SystemConfiguration);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpTypeDriverCompartment);
Assert.AreEqual(HeatPumpMode.heating, hvac.HeatPumpModeDriverCompartment);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvac.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvac.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(50.SI<Watt>(), hvac.AuxHeaterPower);
Assert.AreEqual(false, hvac.DoubleGlazing);
Assert.AreEqual(true, hvac.AdjustableAuxiliaryHeater);
Assert.AreEqual(false, hvac.SeparateAirDistributionDucts);
Assert.AreEqual(false, hvac.WaterElectricHeater);
Assert.AreEqual(false, hvac.AirElectricHeater);
Assert.AreEqual(true, hvac.OtherHeatingTechnology);
TestApplicationInformation(data.ApplicationInformation, "!!NOT FOR CERTIFICATION!!!",
"2021-03-13T07:20:08.0187663Z");
TestSignatureData(data.Signature, "GHpFCKh1bu/YPwYj37kJK1uCrv++BTLf2OUZcOt43Os=",
"#RESULT-8f30c7fe665a47938f6b");
}
private void TestVifStage4Data(IManufacturingStageInputData data)
{
Assert.AreEqual(4, data.StageCount);
TestSignatureData(data.HashPreviousStage, "GHpFCKh1bu/YPwYj37kJK1uCrv++BTLf2OUZcOt43Os=",
"#RESULT-8f30c7fe665a47938f6b");
Assert.AreEqual("Some Manufacturer", data.Vehicle.Manufacturer);
Assert.AreEqual("Some Manufacturer Address", data.Vehicle.ManufacturerAddress);
Assert.AreEqual("VEH-1234567890", data.Vehicle.VIN);
Assert.AreEqual(DateTime.Parse("2020-01-09T11:00:00Z").ToUniversalTime(), data.Vehicle.Date);
Assert.AreEqual("Sample Bus Model", data.Vehicle.Model);
Assert.AreEqual(LegislativeClass.M3, data.Vehicle.LegislativeClass);
Assert.AreEqual(500, data.Vehicle.CurbMassChassis.Value());
Assert.AreEqual(3500, data.Vehicle.GrossVehicleMassRating.Value());
Assert.AreEqual(null, data.Vehicle.AirdragModifiedMultistage);
Assert.AreEqual(TankSystem.Compressed, data.Vehicle.TankSystem);
Assert.AreEqual(RegistrationClass.II_III, data.Vehicle.RegisteredClass);
Assert.AreEqual(1, data.Vehicle.NumberPassengerSeatsLowerDeck);
Assert.AreEqual(10, data.Vehicle.NumberPassengersStandingLowerDeck);
Assert.AreEqual(11, data.Vehicle.NumberPassengerSeatsUpperDeck);
Assert.AreEqual(2, data.Vehicle.NumberPassengersStandingUpperDeck);
Assert.AreEqual(VehicleCode.CB, data.Vehicle.VehicleCode);
Assert.AreEqual(false, data.Vehicle.LowEntry);
Assert.AreEqual(2.5.SI<Meter>(), data.Vehicle.Height);//HeightIntegratedBody
Assert.AreEqual(9.5.SI<Meter>(), data.Vehicle.Length);
Assert.AreEqual(2.5.SI<Meter>(), data.Vehicle.Width);
Assert.AreEqual(2.SI<Meter>(), data.Vehicle.EntranceHeight);
Assert.AreEqual(VehicleDeclarationType.interim, data.Vehicle.VehicleDeclarationType);
Assert.AreEqual(true, data.Vehicle.ADAS.EngineStopStart);
Assert.AreEqual(EcoRollType.None, data.Vehicle.ADAS.EcoRoll);
Assert.AreEqual(PredictiveCruiseControlType.None, data.Vehicle.ADAS.PredictiveCruiseControl);
Assert.AreEqual(true, data.Vehicle.ADAS.ATEcoRollReleaseLockupClutch);
var airdrag = data.Vehicle.Components.AirdragInputData as AbstractCommonComponentType;
Assert.NotNull(airdrag);
Assert.AreEqual("Generic Manufacturer", airdrag.Manufacturer);
Assert.AreEqual("Generic Model", airdrag.Model);
Assert.AreEqual("e12*0815/8051*2017/05E0000*00", airdrag.CertificationNumber);
Assert.AreEqual(DateTime.Parse("2017-03-24T15:00:00Z").ToUniversalTime(), airdrag.Date);
Assert.AreEqual("Vecto AirDrag x.y", airdrag.AppVersion);
Assert.AreEqual(6.34.SI<SquareMeter>(), data.Vehicle.Components.AirdragInputData.AirDragArea);
Assert.AreEqual(6.31.SI<SquareMeter>(), data.Vehicle.Components.AirdragInputData.AirDragArea_0);
Assert.AreEqual(6.32.SI<SquareMeter>(), data.Vehicle.Components.AirdragInputData.TransferredAirDragArea);
TestSignatureData(airdrag.DigestValue, "b9SHCfOoVrBxFQ8wwDK32OO+9bd85DuaUdgs6j/29N8=", "#CabinX23h");
var aux = data.Vehicle.Components.BusAuxiliaries;
Assert.AreEqual(false, aux.ElectricConsumers.InteriorLightsLED);
Assert.AreEqual(true, aux.ElectricConsumers.DayrunninglightsLED);
Assert.AreEqual(true, aux.ElectricConsumers.PositionlightsLED);
Assert.AreEqual(true, aux.ElectricConsumers.BrakelightsLED);
Assert.AreEqual(false, aux.ElectricConsumers.HeadlightsLED);
var hvac = data.Vehicle.Components.BusAuxiliaries.HVACAux;
Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvac.SystemConfiguration);
Assert.AreEqual(HeatPumpType.none, hvac.HeatPumpTypeDriverCompartment);
Assert.AreEqual(HeatPumpMode.heating, hvac.HeatPumpModeDriverCompartment);
Assert.AreEqual(3, hvac.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvac.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvac.HeatPumpPassengerCompartments[1].Item1);
Assert.AreEqual(HeatPumpMode.heating, hvac.HeatPumpPassengerCompartments[1].Item2);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvac.HeatPumpPassengerCompartments[2].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvac.HeatPumpPassengerCompartments[2].Item2);
Assert.AreEqual(50.SI<Watt>(), hvac.AuxHeaterPower);
Assert.AreEqual(false, hvac.DoubleGlazing);
Assert.AreEqual(true, hvac.AdjustableAuxiliaryHeater);
Assert.AreEqual(false, hvac.SeparateAirDistributionDucts);
Assert.AreEqual(true, hvac.WaterElectricHeater);
Assert.AreEqual(false, hvac.AirElectricHeater);
Assert.AreEqual(false, hvac.OtherHeatingTechnology);
}
private void TestSignatureData(DigestData digestData, string digestValue, string reference)
{
Assert.AreEqual(reference, digestData.Reference);
Assert.AreEqual("urn:vecto:xml:2017:canonicalization", digestData.CanonicalizationMethods[0]);
Assert.AreEqual("http://www.w3.org/2001/10/xml-exc-c14n#", digestData.CanonicalizationMethods[1]);
Assert.AreEqual("http://www.w3.org/2001/04/xmlenc#sha256", digestData.DigestMethod);
Assert.AreEqual(digestValue, digestData.DigestValue);
}
private void TestApplicationInformation(IApplicationInformation appInfo, string version, string date)
{
Assert.AreEqual(version, appInfo.SimulationToolVersion);
Assert.AreEqual(DateTime.Parse(date).ToUniversalTime(), appInfo.Date);
}
#endregion
[TestCase()]
public void TestMultistageSimulationRun()
{
......@@ -562,5 +774,12 @@ namespace TUGraz.VectoCore.Tests.Integration.Multistage
#endregion
}
}
......@@ -79,6 +79,8 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationJob v:\VectoCore\VectoCor
<HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
<HeatPumpTypePassengerCompartment>non R-744 3-stage</HeatPumpTypePassengerCompartment>
<HeatPumpModePassengerCompartment>heating</HeatPumpModePassengerCompartment>
<HeatPumpTypePassengerCompartment>non R-744 2-stage</HeatPumpTypePassengerCompartment>
<HeatPumpModePassengerCompartment>cooling</HeatPumpModePassengerCompartment>
<AuxiliaryHeaterPower>50</AuxiliaryHeaterPower>
<DoubleGlazing>false</DoubleGlazing>
<AdjustableAuxiliaryHeater>true</AdjustableAuxiliaryHeater>
......
......@@ -691,6 +691,22 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
</di:Reference>
</v2.0:Signature>
</v2.8:AirDrag>
<v2.8:Auxiliaries>
<v2.8:Data xsi:type="v2.8:CompletedVehicleAuxiliaryDataDeclarationType">
<v2.8:HVAC>
<v2.8:SystemConfiguration>1</v2.8:SystemConfiguration>
<v2.8:HeatPumpTypeDriverCompartment>non R-744 2-stage</v2.8:HeatPumpTypeDriverCompartment>
<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
<v2.8:HeatPumpModePassengerCompartment>heating</v2.8:HeatPumpModePassengerCompartment>
<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
<v2.8:SeparateAirDistributionDucts>false</v2.8:SeparateAirDistributionDucts>
</v2.8:HVAC>
</v2.8:Data>
</v2.8:Auxiliaries>
</v2.8:Components>
</Vehicle>
<ApplicationInformation>
......@@ -752,6 +768,8 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
<v2.8:HeatPumpModeDriverCompartment>heating</v2.8:HeatPumpModeDriverCompartment>
<v2.8:HeatPumpTypePassengerCompartment>non R-744 3-stage</v2.8:HeatPumpTypePassengerCompartment>
<v2.8:HeatPumpModePassengerCompartment>cooling</v2.8:HeatPumpModePassengerCompartment>
<v2.8:HeatPumpTypePassengerCompartment>non R-744 2-stage</v2.8:HeatPumpTypePassengerCompartment>
<v2.8:HeatPumpModePassengerCompartment>heating</v2.8:HeatPumpModePassengerCompartment>
<v2.8:AuxiliaryHeaterPower>50</v2.8:AuxiliaryHeaterPower>
<v2.8:DoubleGlazing>false</v2.8:DoubleGlazing>
<v2.8:AdjustableAuxiliaryHeater>true</v2.8:AdjustableAuxiliaryHeater>
......
......@@ -688,7 +688,7 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
</HashPreviousStage>
<Vehicle xsi:type="v2.8:InterimStageInputType" id="MSTG-2-Vehicle">
<v2.8:Manufacturer>Intermediate Manufacturer 2</v2.8:Manufacturer>
<v2.8:ManufacturerAddress></v2.8:ManufacturerAddress>
<v2.8:ManufacturerAddress>Intermediate Manufacturer Address 2</v2.8:ManufacturerAddress>
<v2.8:VIN>VEH-2234567890</v2.8:VIN>
<v2.8:Date>2021-02-13T07:20:08.0187663Z</v2.8:Date>
<v2.8:VehicleDeclarationType>final</v2.8:VehicleDeclarationType>
......@@ -729,8 +729,8 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile
</v2.8:Components>
</Vehicle>
<ApplicationInformation>
<SimulationToolVersion>!!NOT FOR CERTIFICATION!!</SimulationToolVersion>
<Date>2021-02-13T07:20:08.0187663Z</Date>
<SimulationToolVersion>!!NOT FOR CERTIFICATION!!!</SimulationToolVersion>
<Date>2021-03-13T07:20:08.0187663Z</Date>
</ApplicationInformation>
</Data>
<Signature>
......
......@@ -110,7 +110,8 @@ namespace TUGraz.VectoCore.Tests.XML
{
var reader = XmlReader.Create(_primaryOnlyInputData);
var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider;
Assert.AreEqual(null, inputDataProvider.JobInputData.ManufacturingStages);
Assert.AreEqual(null, inputDataProvider.JobInputData.ConsolidateManufacturingStage);
Assert.AreEqual(false, inputDataProvider.JobInputData.InputComplete);
}
......@@ -151,6 +152,7 @@ namespace TUGraz.VectoCore.Tests.XML
Assert.AreEqual(null, vehicle.ADAS);
Assert.AreEqual(null, vehicle.Components);
}
[TestCase]
......@@ -199,6 +201,17 @@ namespace TUGraz.VectoCore.Tests.XML
{
var reader = XmlReader.Create(_consolidatedInputDataAirdrag);
var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider;
var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
Assert.NotNull(hvaux);
Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpModeDriverCompartment);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeDriverCompartment);
Assert.AreEqual(2, hvaux.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpPassengerCompartments[1].Item1);
Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpPassengerCompartments[1].Item2);
Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
}
......@@ -207,6 +220,15 @@ namespace TUGraz.VectoCore.Tests.XML
{
var reader = XmlReader.Create(_consolidatedInputDataHeatPump);
var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider;
var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
Assert.NotNull(hvaux);
Assert.AreEqual(HeatPumpMode.N_A, hvaux.HeatPumpModeDriverCompartment);
Assert.AreEqual(HeatPumpType.none, hvaux.HeatPumpTypeDriverCompartment);
Assert.AreEqual(1, hvaux.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
}
......@@ -215,6 +237,15 @@ namespace TUGraz.VectoCore.Tests.XML
{
var reader = XmlReader.Create(_consolidatedInputDataHeatHev);
var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider;
var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
Assert.NotNull(hvaux);
Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpModeDriverCompartment);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeDriverCompartment);
Assert.AreEqual(1, hvaux.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
}
......@@ -223,6 +254,16 @@ namespace TUGraz.VectoCore.Tests.XML
{
var reader = XmlReader.Create(_consolidatedInputDataHeatNgTank);
var inputDataProvider = _xmlInputReader.Create(reader) as IMultistageBusInputDataProvider;
var hvaux = inputDataProvider.JobInputData.ConsolidateManufacturingStage.Vehicle.Components.BusAuxiliaries.HVACAux;
Assert.NotNull(hvaux);
Assert.AreEqual(HeatPumpMode.heating, hvaux.HeatPumpModeDriverCompartment);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvaux.HeatPumpTypeDriverCompartment);
Assert.AreEqual(1, hvaux.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvaux.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvaux.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
}
}
......
......@@ -611,7 +611,7 @@ namespace TUGraz.VectoCore.Tests.XML
{
Assert.AreEqual("MSTG-2-Vehicle", vehicleData.Identifier);
Assert.AreEqual("Intermediate Manufacturer 2", vehicleData.Manufacturer);
Assert.AreEqual("", vehicleData.ManufacturerAddress);
Assert.AreEqual("Intermediate Manufacturer Address 2", vehicleData.ManufacturerAddress);
Assert.AreEqual("VEH-2234567890", vehicleData.VIN);
Assert.AreEqual(DateTime.Parse("2021-02-13T07:20:08.0187663Z").ToUniversalTime(), vehicleData.Date);
Assert.AreEqual(null, vehicleData.AirdragModifiedMultistage);
......
......@@ -112,11 +112,13 @@ namespace TUGraz.VectoCore.Tests.XML
Assert.AreEqual(BusHVACSystemConfiguration.Configuration0, hvacAux.SystemConfiguration);
Assert.AreEqual(HeatPumpType.none, hvacAux.HeatPumpTypeDriverCompartment);
Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpModeDriverCompartment);
Assert.AreEqual(2, hvacAux.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(3, hvacAux.HeatPumpPassengerCompartments.Count);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[0].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[0].Item2);
Assert.AreEqual(HeatPumpType.non_R_744_3_stage, hvacAux.HeatPumpPassengerCompartments[1].Item1);
Assert.AreEqual(HeatPumpMode.heating, hvacAux.HeatPumpPassengerCompartments[1].Item2);
Assert.AreEqual(HeatPumpType.non_R_744_2_stage, hvacAux.HeatPumpPassengerCompartments[2].Item1);
Assert.AreEqual(HeatPumpMode.cooling, hvacAux.HeatPumpPassengerCompartments[2].Item2);
Assert.AreEqual(50, hvacAux.AuxHeaterPower.Value());
Assert.AreEqual(false, hvacAux.DoubleGlazing);
Assert.AreEqual(true, hvacAux.AdjustableAuxiliaryHeater);
......
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