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

Skip to content
Snippets Groups Projects
Commit 374628de authored by Markus QUARITSCH's avatar Markus QUARITSCH
Browse files

test reading pif with errors in single simulation runs, change not used...

test reading pif with errors in single simulation runs, change not used entries in completed bus simulation to error for testing
parent cbd1011a
No related branches found
No related tags found
No related merge requests found
......@@ -31,6 +31,7 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using TUGraz.VectoCommon.BusAuxiliaries;
using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCommon.Models;
......@@ -213,6 +214,7 @@ namespace TUGraz.VectoCore.InputData.Impl
public IList<IResult> Results { get; internal set; }
}
[DebuggerDisplay("{ResultStatus} | {VehicleGroup} {Mission}")]
public class Result : IResult
{
public string ResultStatus { get; internal set; }
......
......@@ -180,7 +180,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
var primaryResult = InputDataProvider.PrimaryVehicleData.GetResult(
simulationRunData.Mission.BusParameter.BusGroup, simulationRunData.Mission.MissionType, fuelMode,
simulationRunData.VehicleData.Loading);
if (primaryResult == null) {
if (primaryResult == null || !primaryResult.ResultStatus.Equals("success")) {
throw new VectoException(
"Failed to find results in PrimaryVehicleReport for vehicle group: {0}, mission: {1}, fuel mode: '{2}', payload: {3}. Make sure PIF and completed vehicle data match!",
simulationRunData.Mission.BusParameter.BusGroup, simulationRunData.Mission.MissionType, fuelMode,
......
......@@ -409,7 +409,8 @@ namespace TUGraz.VectoCore.OutputData.XML
case VectoRun.Status.Canceled:
case VectoRun.Status.Aborted:
return new object[] {
new XElement(tns + "Error", resultEntry.Error)
new XElement(tns + "Error", resultEntry.Error),
new XElement(tns + "ErrorDetails", resultEntry.StackTrace),
};
default: throw new ArgumentOutOfRangeException();
}
......
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<pif:VectoOutputPrimaryVehicle xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation:HeavyBus:v0.1" xmlns:pif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation" xmlns:di="http://www.w3.org/2000/09/xmldsig#" xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation https://webgate.ec.europa.eu/CITnet/svn/VECTO/trunk/Share/XML/XSD//DEV/VectoOutputPrimaryVehicleInformation.xsd">
<pif:Data xsi:type="PrimaryVehicleHeavyBusDataType" id="PIF-4547e7655ef846a59ce4">
<Vehicle xsi:type="VehiclePIFType">
......@@ -486,7 +486,7 @@
</Fuel>
<CO2 unit="g/km">695.0</CO2>
</Result>
<Result status="success">
<Result status="error">
<VehicleGroup>P34SD</VehicleGroup>
<Mission>Coach</Mission>
<SimulationParameters>
......@@ -495,12 +495,16 @@
<PassengerCount>44.98</PassengerCount>
<FuelMode>single fuel mode</FuelMode>
</SimulationParameters>
<Fuel type="Diesel CI">
<!-- Test using PIF where not all results are present
<Fuel type="Diesel CI">
<EnergyConsumption unit="MJ/km">9.96560</EnergyConsumption>
</Fuel>
<CO2 unit="g/km">730.5</CO2>
-->
<Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
<ErrorDetails>String</ErrorDetails>
</Result>
<Result status="success">
<Result status="error">
<VehicleGroup>P34DD</VehicleGroup>
<Mission>Interurban</Mission>
<SimulationParameters>
......@@ -509,12 +513,16 @@
<PassengerCount>24.48</PassengerCount>
<FuelMode>single fuel mode</FuelMode>
</SimulationParameters>
<!-- Test using PIF where not all results are present
<Fuel type="Diesel CI">
<EnergyConsumption unit="MJ/km">14.24030</EnergyConsumption>
</Fuel>
<CO2 unit="g/km">1043.8</CO2>
-->
<Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
<ErrorDetails>String</ErrorDetails>
</Result>
<Result status="success">
<Result status="error">
<VehicleGroup>P34DD</VehicleGroup>
<Mission>Interurban</Mission>
<SimulationParameters>
......@@ -523,12 +531,16 @@
<PassengerCount>97.92</PassengerCount>
<FuelMode>single fuel mode</FuelMode>
</SimulationParameters>
<!-- Test using PIF where not all results are present
<Fuel type="Diesel CI">
<EnergyConsumption unit="MJ/km">16.77091</EnergyConsumption>
</Fuel>
<CO2 unit="g/km">1229.3</CO2>
-->
<Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
<ErrorDetails>String</ErrorDetails>
</Result>
<Result status="success">
<Result status="error">
<VehicleGroup>P34DD</VehicleGroup>
<Mission>Coach</Mission>
<SimulationParameters>
......@@ -551,10 +563,14 @@
<PassengerCount>65.28</PassengerCount>
<FuelMode>single fuel mode</FuelMode>
</SimulationParameters>
<!-- Test using PIF where not all results are present
<Fuel type="Diesel CI">
<EnergyConsumption unit="MJ/km">11.34890</EnergyConsumption>
</Fuel>
<CO2 unit="g/km">831.9</CO2>
-->
<Error>20 (Coach _P40DD_ReferenceLoad) - absTime: 7535.2269 [s], distance: 130338.3598 [m], dt: 0.6304 [s], v: 0.0141 [m/s], Gear: 1 | DrivingActionAccelerate: Failed to find operating point</Error>
<ErrorDetails>String</ErrorDetails>
</Result>
</Results>
<ApplicationInformation>
......
......@@ -3787,6 +3787,9 @@
<Content Include="TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\PIF-heavyBus-sample.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\primary_heavyBus group P39_40_nonSmart_ESS.RSLT_PIF.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\vecto_vehicle-medium_lorryFWD-sample.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
......
......@@ -28,6 +28,10 @@ namespace TUGraz.VectoCore.Tests.XML
private const string vehilcePIFExample =
"TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/PIF-heavyBus-sample.xml";
private const string vehiclePIFExampleWithErrors =
@"TestData\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses\primary_heavyBus group P39_40_nonSmart_ESS.RSLT_PIF.xml"
;
protected IXMLInputDataReader xmlInputReader;
private IKernel _kernel;
......@@ -42,6 +46,19 @@ namespace TUGraz.VectoCore.Tests.XML
}
[TestCase]
public void TestReadPIFReportWithErrors()
{
var reader = XmlReader.Create(vehiclePIFExampleWithErrors);
var inputDataProvider = xmlInputReader.Create(reader) as IPrimaryVehicleInformationInputDataProvider;
Assert.AreEqual("error", inputDataProvider.ResultsInputData.Status);
Assert.AreEqual(20, inputDataProvider.ResultsInputData.Results.Count);
Assert.AreEqual("error", inputDataProvider.ResultsInputData.Results[19].ResultStatus);
}
[TestCase]
public void TestPrimaryVehicleBusData()
{
......
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