From 0ddf74e2a9c880852cc4ce78878f8a1a39c8b83d Mon Sep 17 00:00:00 2001
From: Michael Krisper <michael.krisper@tugraz.at>
Date: Thu, 17 Jun 2021 17:15:39 +0200
Subject: [PATCH] inlined string literals and format specifier

---
 HashingTool/Helper/HashingHelper.cs           | 21 ++++---
 .../UserControl/ManufacturerReportXMLFile.cs  | 16 +++---
 .../ViewModel/UserControl/ReportXMLFile.cs    | 10 ++--
 .../ViewModel/UserControl/VectoJobFile.cs     |  7 +--
 .../XMLDeclarationEngineDataProvider.cs       |  5 +-
 .../Impl/AbstractExternalResourceReader.cs    | 13 ++---
 .../XMLReports/XMLManufacturerReportReader.cs |  3 +-
 ...larationDataAdapterCompletedBusSpecific.cs |  8 +--
 .../DeclarationDataAdapterPrimaryBus.cs       |  5 +-
 ...rationModePrimaryBusVectoRunDataFactory.cs |  3 +-
 ...arationModeSingleBusVectoRunDataFactory.cs |  3 +-
 .../Models/Simulation/Data/VectoRunData.cs    | 26 ++++-----
 .../SimulationComponent/Impl/Vehicle.cs       | 18 +++---
 VectoCore/VectoCore/Utils/SearchAlgorithm.cs  | 17 +++---
 VectoCore/VectoCore/Utils/VectoCSVFile.cs     |  9 ++-
 .../Integration/FullCycleDeclarationTest.cs   |  5 +-
 .../Models/Declaration/DeclarationDataTest.cs | 10 +++-
 .../VTPCycleValidationTest.cs                 |  8 +--
 .../VectoCoreTest/Utils/ResultFileHelper.cs   |  8 +--
 .../XML/XMLEngineeringInputSingleTest.cs      | 56 +++++++++----------
 20 files changed, 123 insertions(+), 128 deletions(-)

diff --git a/HashingTool/Helper/HashingHelper.cs b/HashingTool/Helper/HashingHelper.cs
index a747b2e64d..b9bffa7867 100644
--- a/HashingTool/Helper/HashingHelper.cs
+++ b/HashingTool/Helper/HashingHelper.cs
@@ -56,8 +56,8 @@ namespace HashingTool.Helper
 			}
 			var valid = x.DocumentElement.LocalName == XMLNames.VectoManufacturerReport;
 			if (!valid) {
-				errorLog.LogError(String.Format("Invalid XML file given ({0}). Expected Manufacturer Report XML ({1})!",
-					x.DocumentElement.LocalName, XMLNames.VectoManufacturerReport));
+				errorLog.LogError($"Invalid XML file given ({x.DocumentElement.LocalName}). " +
+								$"Expected Manufacturer Report XML ({XMLNames.VectoManufacturerReport})!");
 			}
 			return valid;
 		}
@@ -69,8 +69,8 @@ namespace HashingTool.Helper
 			}
 			var valid = x.DocumentElement != null && x.DocumentElement.LocalName == XMLNames.VectoCustomerReport;
 			if (!valid) {
-				errorLog.LogError(String.Format("Invalid XML file given ({0}). Expected Customer Report XML ({1})!",
-					x.DocumentElement.LocalName, XMLNames.VectoCustomerReport));
+				errorLog.LogError($"Invalid XML file given ({x.DocumentElement.LocalName}). " +
+								$"Expected Customer Report XML ({XMLNames.VectoCustomerReport})!");
 			}
 			return valid;
 		}
@@ -83,9 +83,8 @@ namespace HashingTool.Helper
 			var valid = x.DocumentElement.LocalName == XMLNames.VectoInputDeclaration &&
 						x.DocumentElement.FirstChild.LocalName == XMLNames.Component_Vehicle;
 			if (!valid) {
-				errorLog.LogError(String.Format("Invalid XML file given ({0}/{1}). Expected Vehicle XML ({2}/{3})!",
-					x.DocumentElement.LocalName, x.DocumentElement.FirstChild.LocalName, XMLNames.VectoInputDeclaration,
-					XMLNames.Component_Vehicle));
+				errorLog.LogError($"Invalid XML file given ({x.DocumentElement.LocalName}/{x.DocumentElement.FirstChild.LocalName}). " +
+								$"Expected Vehicle XML ({XMLNames.VectoInputDeclaration}/{XMLNames.Component_Vehicle})!");
 			}
 			return valid;
 		}
@@ -97,8 +96,8 @@ namespace HashingTool.Helper
 			}
 
 			if (x.DocumentElement.LocalName != XMLNames.VectoInputDeclaration) {
-				errorLog.LogError(String.Format("Invalid XML file given ({0}). Expected Component XML ({1})!",
-					x.DocumentElement.LocalName, XMLNames.VectoInputDeclaration));
+				errorLog.LogError($"Invalid XML file given ({x.DocumentElement.LocalName}). " +
+								$"Expected Component XML ({XMLNames.VectoInputDeclaration})!");
 
 				return false;
 			}
@@ -110,8 +109,8 @@ namespace HashingTool.Helper
 			};
 			var valid = components.Where(c => c.XMLElementName() == localName).Any();
 			if (!valid) {
-				errorLog.LogError(String.Format("Invalid XML file given ({0}). Expected Component XML ({1})!",
-					localName, String.Join(", ", components.Select(c => c.XMLElementName()))));
+				errorLog.LogError($"Invalid XML file given ({localName}). " +
+								$"Expected Component XML ({String.Join(", ", components.Select(c => c.XMLElementName()))})!");
 			}
 			return valid;
 		}
diff --git a/HashingTool/ViewModel/UserControl/ManufacturerReportXMLFile.cs b/HashingTool/ViewModel/UserControl/ManufacturerReportXMLFile.cs
index f0ac778e9b..0afd5f2096 100644
--- a/HashingTool/ViewModel/UserControl/ManufacturerReportXMLFile.cs
+++ b/HashingTool/ViewModel/UserControl/ManufacturerReportXMLFile.cs
@@ -137,16 +137,16 @@ namespace HashingTool.ViewModel.UserControl
 			var digestMismatch = componentData.Where(x => x.DigestValueMatchesJobComponent == null || !x.DigestValueMatchesJobComponent.Value).ToArray();
 			if (jobComponents.Any()) {
 				foreach (var entry in certificationNumberMismatch) {
-					_validationErrors.Add(
-						string.Format(
-							"Verifying Manufacturer Report: Certification number for component '{0}' does not match! Job-file: '{1}', Report: '{2}'",
-							entry.Component, entry.CertificationNumberExpected, entry.CertificationNumber));
+					_validationErrors.Add("Verifying Manufacturer Report: " +
+										$"Certification number for component '{entry.Component}' does not match! " +
+										$"Job-file: '{entry.CertificationNumberExpected}', " +
+										$"Report: '{entry.CertificationNumber}'");
 				}
 				foreach (var entry in digestMismatch) {
-					_validationErrors.Add(
-						string.Format(
-							"Verifying Manufacturer Report: Digest Value for component '{0}' does not match! Job-file: '{1}', Report: '{2}'",
-							entry.Component, entry.DigestValueExpected, entry.DigestValue));
+					_validationErrors.Add("Verifying Manufacturer Report: " +
+										$"Digest Value for component '{entry.Component}' does not match! " +
+										$"Job-file: '{entry.DigestValueExpected}', " +
+										$"Report: '{entry.DigestValue}'");
 				}
 			}
 
diff --git a/HashingTool/ViewModel/UserControl/ReportXMLFile.cs b/HashingTool/ViewModel/UserControl/ReportXMLFile.cs
index bf81ff1b85..3c77576e14 100644
--- a/HashingTool/ViewModel/UserControl/ReportXMLFile.cs
+++ b/HashingTool/ViewModel/UserControl/ReportXMLFile.cs
@@ -107,13 +107,15 @@ namespace HashingTool.ViewModel.UserControl
 				var vinMatch = _jobData.VehicleIdentificationNumber == ReportVIN;
 
 				if (!digestMatch) {
-					_validationErrors.Add(string.Format("Job Digest Value mismatch! Computed job digest: '{0}', digest read: '{1}'",
-						_jobDigestComputed, JobDigestValueRead));
+					_validationErrors.Add("Job Digest Value mismatch! " +
+										$"Computed job digest: '{_jobDigestComputed}', " +
+										$"digest read: '{JobDigestValueRead}'");
 				}
 
 				if (!vinMatch) {
-					_validationErrors.Add(string.Format("VIN mismatch! VIN from job data: '{0}', VIN from report: '{1}'",
-						_jobData.VehicleIdentificationNumber, ReportVIN));
+					_validationErrors.Add("VIN mismatch! " +
+										$"VIN from job data: '{_jobData.VehicleIdentificationNumber}', " +
+										$"VIN from report: '{ReportVIN}'");
 				}
 
 				JobDigestMatchesReport = vinMatch
diff --git a/HashingTool/ViewModel/UserControl/VectoJobFile.cs b/HashingTool/ViewModel/UserControl/VectoJobFile.cs
index 9b477916dd..c8f1a7a5ad 100644
--- a/HashingTool/ViewModel/UserControl/VectoJobFile.cs
+++ b/HashingTool/ViewModel/UserControl/VectoJobFile.cs
@@ -184,10 +184,9 @@ namespace HashingTool.ViewModel.UserControl
 						entry.CertificationNumber = h.GetCertificationNumber(component.Entry, i);
 						entry.CertificationDate = h.GetCertificationDate(component.Entry, i);
 						if (!entry.Valid) {
-							_xmlFile.LogError(
-								string.Format(
-									"Digest Value mismatch for component \"{0}\". Read digest value: \"{1}\", computed digest value \"{2}\"",
-									entry.Component, entry.DigestValueRead, entry.DigestValueComputed));
+							_xmlFile.LogError($"Digest Value mismatch for component \"{entry.Component}\". " +
+											$"Read digest value: \"{entry.DigestValueRead}\", " +
+											$"computed digest value \"{entry.DigestValueComputed}\"");
 						}
 						Components.Add(entry);
 						allValid &= entry.Valid;
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs
index b598572a6c..933c79281c 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationEngineDataProvider.cs
@@ -341,9 +341,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 						string.Join(
 							"; ",
 							missing.Select(
-								x => string.Format(
-									"n: {0}, T: {1}", x.Attributes?[XMLNames.Engine_FuelConsumptionMap_EngineSpeed_Attr]?.Value,
-									x.Attributes?[XMLNames.Engine_FuelConsumptionMap_Torque_Attr]?.Value))));
+								x => $"n: {x.Attributes?[XMLNames.Engine_FuelConsumptionMap_EngineSpeed_Attr]?.Value}, " +
+									$"T: {x.Attributes?[XMLNames.Engine_FuelConsumptionMap_Torque_Attr]?.Value}")));
 				}
 
 				if (correctionFactorNodes[0].ParentNode.ParentNode != whrFuelNode) {
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/Reader/Impl/AbstractExternalResourceReader.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/Reader/Impl/AbstractExternalResourceReader.cs
index 4a894282a0..43cbf36fbd 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/Reader/Impl/AbstractExternalResourceReader.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/Reader/Impl/AbstractExternalResourceReader.cs
@@ -64,15 +64,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering.Reader
 				? componentNode?.SelectSingleNode($"./*[local-name()='{XMLNames.ComponentDataWrapper}']")
 				: componentNode;
 			var componentResourceNode = componentNode?.SelectSingleNode(
-											string.Format(
-												"./*[local-name()='{0}' and @{3}='{4}']", XMLNames.ExternalResource,
-												XMLNames.ExtResource_Component_Attr, component, XMLNames.ExtResource_Type_Attr,
-												XMLNames.ExtResource_Type_Value_XML)) ??
+											$"./*[local-name()='{XMLNames.ExternalResource}'" +
+											$" and @{XMLNames.ExtResource_Type_Attr}='{XMLNames.ExtResource_Type_Value_XML}']") ??
 										BaseNode?.SelectSingleNode(
-											string.Format(
-												"./*[local-name()='{0}' and @{1}='{2}' and @{3}='{4}']", XMLNames.ExternalResource,
-												XMLNames.ExtResource_Component_Attr, component, XMLNames.ExtResource_Type_Attr,
-												XMLNames.ExtResource_Type_Value_XML));
+											$"./*[local-name()='{XMLNames.ExternalResource}'" +
+											$" and @{XMLNames.ExtResource_Component_Attr}='{component}'" +
+											$" and @{XMLNames.ExtResource_Type_Attr}='{XMLNames.ExtResource_Type_Value_XML}']");
 			if (dataNode != null && componentResourceNode == null) {
 				var type = dataNode.SchemaInfo.SchemaType;
 				var version = XMLHelper.GetXsdType(type);
diff --git a/VectoCore/VectoCore/InputData/FileIO/XMLReports/XMLManufacturerReportReader.cs b/VectoCore/VectoCore/InputData/FileIO/XMLReports/XMLManufacturerReportReader.cs
index 751cc5faae..d64f9942d0 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XMLReports/XMLManufacturerReportReader.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XMLReports/XMLManufacturerReportReader.cs
@@ -76,7 +76,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 				throw new Exception($"Component {component} not found");
 			}
 			if (index >= nodes.Count) {
-				throw new Exception($"index exceeds number of components found! index: {index}, #components: {nodes.Count}");
+				throw new Exception($"index exceeds number of components found! index: {index}, " +
+									$"#components: {nodes.Count}");
 			}
 			return nodes[index];
 		}
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs
index b0b1e3bd93..3ed44c3045 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterCompletedBusSpecific.cs
@@ -62,7 +62,8 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 
 			vehicleData.VehicleCode = completedVehicle.VehicleCode;
 			if (vehicleData.TotalVehicleMass.IsGreater(vehicleData.GrossVehicleMass)) {
-				throw new VectoException("Total Vehicle Mass exceeds Gross Vehicle Mass for completed bus specific ({0}/{1})", vehicleData.TotalVehicleMass, vehicleData.GrossVehicleMass);
+				throw new VectoException("Total Vehicle Mass exceeds Gross Vehicle Mass for completed bus specific ({0}/{1})", 
+					vehicleData.TotalVehicleMass, vehicleData.GrossVehicleMass);
 			}
 			return vehicleData;
 		}
@@ -294,9 +295,8 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 
             //ToDo FK COP calculation
             ssmInputs.HVACCompressorType = heatPumpTypePassengerCompartment; // use passenger compartment
-            ssmInputs.HVACTechnology = string.Format(
-                "{0} ({1})", busAux.SystemConfiguration.GetName(),
-                string.Join(", ", new[] { heatPumpTypePassengerCompartment.GetName(), heatPumpTypeDriverCompartment.GetName() }));
+            ssmInputs.HVACTechnology = $"{busAux.SystemConfiguration.GetName()} " + 
+									   $"({string.Join(", ", heatPumpTypePassengerCompartment.GetName(), heatPumpTypeDriverCompartment.GetName())})";
 			ssmInputs.COP = DeclarationData.BusAuxiliaries.CalculateCOP(
                 coolingPower.Item1, heatPumpTypeDriverCompartment, coolingPower.Item2, heatPumpTypePassengerCompartment /* average */,
                 floorType);
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs
index f7b09265fd..a41418f00e 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapterPrimaryBus.cs
@@ -351,9 +351,8 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 			
 				coolingPower.Item1, HeatPumpType.none, coolingPower.Item2, busParams.HVACCompressorType,
 				busParams.VehicleCode.GetFloorType());
-			retVal.HVACTechnology = string.Format(
-				"{0} ({1})", busParams.HVACConfiguration.GetName(),
-				string.Join(", ", new[] { busParams.HVACCompressorType.GetName(), HeatPumpType.none.GetName() }));
+			retVal.HVACTechnology = $"{busParams.HVACConfiguration.GetName()} " +
+									$"({string.Join(", ", busParams.HVACCompressorType.GetName(), HeatPumpType.none.GetName())})";
 			
 			//SetHVACParameters(retVal, vehicleData, mission);
 
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModePrimaryBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModePrimaryBusVectoRunDataFactory.cs
index b17b25cd40..4094685bc6 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModePrimaryBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModePrimaryBusVectoRunDataFactory.cs
@@ -108,7 +108,8 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 				DriverData = _driverdata,
 				ExecutionMode = ExecutionMode.Declaration,
 				JobName = InputDataProvider.JobInputData.JobName,
-				ModFileSuffix = (engineModes.Count > 1 ? string.Format("_EngineMode{0}_", modeIdx) : "") + "_" + mission.BusParameter.BusGroup.GetClassNumber() + "_" + loading.Key.ToString(),
+				ModFileSuffix = $"{(engineModes.Count > 1 ? $"_EngineMode{modeIdx}_" : "")}" +
+								$"_{mission.BusParameter.BusGroup.GetClassNumber()}_{loading.Key}",
 				Report = Report,
 				Mission = mission,
 				InputDataHash = InputDataProvider.XMLHash,
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs
index edb06d2e89..a4a9cd71a9 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs
@@ -98,7 +98,8 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl {
 				DriverData = _driverdata,
 				ExecutionMode = ExecutionMode.Declaration,
 				JobName = InputDataProvider.JobInputData.JobName,
-				ModFileSuffix = (engineModes.Count > 1 ? string.Format("_EngineMode{0}_", modeIdx) : "") + "_" + mission.BusParameter.BusGroup.GetClassNumber() + "-Single_" + loading.Key.ToString(),
+				ModFileSuffix = $"{(engineModes.Count > 1 ? $"_EngineMode{modeIdx}_" : "")}" +
+								$"_{mission.BusParameter.BusGroup.GetClassNumber()}-Single_{loading.Key}",
 				Report = Report,
 				Mission = mission,
 				InputDataHash = InputDataProvider.XMLHash,
diff --git a/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs b/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs
index 67b3aaaf5c..905b0f873a 100644
--- a/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs
+++ b/VectoCore/VectoCore/Models/Simulation/Data/VectoRunData.cs
@@ -257,8 +257,8 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 			if (gearboxData.Gears.Count + 1 != engineData.FullLoadCurves.Count) {
 				return
 					new ValidationResult(
-						string.Format("number of full-load curves in engine does not match gear count. engine fld: {0}, gears: {1}",
-							engineData.FullLoadCurves.Count, gearboxData.Gears.Count));
+						$"number of full-load curves in engine does not match gear count. " +
+						$"engine fld: {engineData.FullLoadCurves.Count}, gears: {gearboxData.Gears.Count}");
 			}
 
 			foreach (var gear in gearboxData.Gears) {
@@ -299,9 +299,9 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 
 			var tqLoss = gear.Value.LossMap.GetTorqueLoss(engineSpeed / gear.Value.Ratio, inTorque * gear.Value.Ratio);
 			if (tqLoss.Extrapolated) {
-				return new ValidationResult(
-					string.Format("Interpolation of Gear-{0}-LossMap failed with torque={1} and angularSpeed={2}", gear.Key,
-								inTorque, engineSpeed.ConvertToRoundsPerMinute()));
+				return new ValidationResult($"Interpolation of Gear-{gear.Key}-LossMap failed " +
+											$"with torque={inTorque} " +
+											$"and angularSpeed={engineSpeed.ConvertToRoundsPerMinute()}");
 
 			}
 			var angledriveTorque = (inTorque - tqLoss.Value) / gear.Value.Ratio;
@@ -313,10 +313,9 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 					engineSpeed / gear.Value.Ratio / angledriveRatio,
 					angledriveTorque * angledriveRatio);
 				if (anglTqLoss.Extrapolated) {
-					return new ValidationResult(
-						string.Format(
-							"Interpolation of Angledrive-LossMap failed with torque={0} and angularSpeed={1}",
-							angledriveTorque, (engineSpeed / gear.Value.Ratio).ConvertToRoundsPerMinute()));
+					return new ValidationResult("Interpolation of Angledrive-LossMap failed " +
+												$"with torque={angledriveTorque} " +
+												$"and angularSpeed={(engineSpeed / gear.Value.Ratio).ConvertToRoundsPerMinute()}");
 				}
 			}
 
@@ -325,11 +324,10 @@ namespace TUGraz.VectoCore.Models.Simulation.Data
 				
 				var axlTqLoss = axleGearData.AxleGear.LossMap.GetTorqueLoss(axleAngularVelocity, axlegearTorque * axleGearData.AxleGear.Ratio);
 				if (axlTqLoss.Extrapolated) { 
-				return
-						new ValidationResult(
-							string.Format(
-								"Interpolation of AxleGear-LossMap failed with torque={0} and angularSpeed={1} (gear={2}, velocity={3})",
-								axlegearTorque, axleAngularVelocity.ConvertToRoundsPerMinute(), gear.Key, velocity));
+				return new ValidationResult("Interpolation of AxleGear-LossMap failed " +
+											$"with torque={axlegearTorque} " +
+											$"and angularSpeed={axleAngularVelocity.ConvertToRoundsPerMinute()} " +
+											$"(gear={gear.Key}, velocity={velocity})");
 				}
 			}
 			return null;
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs
index dcbea7750d..1d94509c1f 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs
@@ -270,15 +270,15 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 			public MeterPerSecond Velocity = 0.SI<MeterPerSecond>();
 			public MeterPerSquareSecond Acceleration = 0.SI<MeterPerSquareSecond>();
 
-			public override string ToString()
-			{
-				return
-					string.Format(
-						"v: {0}  a: {1}, dt: {2}, driver_acc: {3}, roll_res: {4}, slope_res: {5}, air_drag: {6}, traction force: {7}",
-						Velocity, Acceleration, SimulationInterval, DriverAcceleration, RollingResistance, SlopeResistance,
-						AirDragResistance,
-						VehicleTractionForce);
-			}
+			public override string ToString() =>
+				$"v: {Velocity}  " +
+				$"a: {Acceleration}, " +
+				$"dt: {SimulationInterval}, " +
+				$"driver_acc: {DriverAcceleration}, " +
+				$"roll_res: {RollingResistance}, " +
+				$"slope_res: {SlopeResistance}, " +
+				$"air_drag: {AirDragResistance}, " +
+				$"traction force: {VehicleTractionForce}";
 		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCore/Utils/SearchAlgorithm.cs b/VectoCore/VectoCore/Utils/SearchAlgorithm.cs
index 3400b3250e..5cd1169ac6 100644
--- a/VectoCore/VectoCore/Utils/SearchAlgorithm.cs
+++ b/VectoCore/VectoCore/Utils/SearchAlgorithm.cs
@@ -185,17 +185,16 @@ namespace TUGraz.VectoCore.Utils
 
 			var rand = new Random().Next();
 			using (
-				var f =
-					new StreamWriter(File.Open("LineSearch-" + Thread.CurrentThread.ManagedThreadId + "-statistics.csv",
+				var f = new StreamWriter(File.Open("LineSearch-" + Thread.CurrentThread.ManagedThreadId + "-statistics.csv",
 						FileMode.Append))) {
 				foreach (var d in debug.Data) {
-					f.WriteLine(string.Format("{0}, {1}, {2}, {3}, {4}, {5}, {6}",
-						rand,
-						(d.x - xmin) / (xmax - xmin),
-						(d.y - ymin) / (ymax - ymin),
-						d.x / Math.Max(Math.Abs(xmax), Math.Abs(xmin)),
-						d.y / Math.Max(Math.Abs(ymax), Math.Abs(ymin)),
-						d.x, d.y));
+					f.WriteLine($"{rand}, " +
+								$"{(d.x - xmin) / (xmax - xmin)}, " +
+								$"{(d.y - ymin) / (ymax - ymin)}, " +
+								$"{d.x / Math.Max(Math.Abs(xmax), Math.Abs(xmin))}, " +
+								$"{d.y / Math.Max(Math.Abs(ymax), Math.Abs(ymin))}, " +
+								$"{d.x}, " +
+								$"{d.y}");
 				}
 			}
 		}
diff --git a/VectoCore/VectoCore/Utils/VectoCSVFile.cs b/VectoCore/VectoCore/Utils/VectoCSVFile.cs
index 3f7365d0fc..455717e111 100644
--- a/VectoCore/VectoCore/Utils/VectoCSVFile.cs
+++ b/VectoCore/VectoCore/Utils/VectoCSVFile.cs
@@ -155,8 +155,8 @@ namespace TUGraz.VectoCore.Utils
 				firstLineIsData = false;
 				if (table.Columns.Count != cells.Length && !ignoreEmptyColumns) {
 					throw new CSVReadException(
-						string.Format("Line {0}: The number of values is not correct. Expected {1} Columns, Got {2} Columns",
-							lineNumber, table.Columns.Count, cells.Length));
+						$"Line {lineNumber}: The number of values is not correct. " +
+						$"Expected {table.Columns.Count} Columns, Got {cells.Length} Columns");
 				}
 
 				try {
@@ -203,10 +203,9 @@ namespace TUGraz.VectoCore.Utils
 			var entries = new List<string>();
 			if (addVersionHeader) {
 				try {
-					entries.Add(string.Format("# VECTO{0} {1} - {2}", VectoSimulationCore.BranchSuffix, VectoSimulationCore.VersionNumber,
-						DateTime.Now.ToString("dd.MM.yyyy HH:mm")));
+					entries.Add($"# VECTO{VectoSimulationCore.BranchSuffix} {VectoSimulationCore.VersionNumber} - {DateTime.Now:dd.MM.yyyy HH:mm}");
 				} catch (Exception) {
-					entries.Add(string.Format("# VECTO {0} - {1}", "Unknown", DateTime.Now.ToString("dd.MM.yyyy HH:mm")));
+					entries.Add($"# VECTO Unknown - {DateTime.Now:dd.MM.yyyy HH:mm}");
 				}
 			}
 			var header = table.Columns.Cast<DataColumn>().Select(col => col.Caption ?? col.ColumnName);
diff --git a/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs b/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
index 97819e4f7d..ef93682209 100644
--- a/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
@@ -322,9 +322,8 @@ namespace TUGraz.VectoCore.Tests.Integration
 			jobContainer.Execute();
 			jobContainer.WaitFinished();
 			Assert.IsTrue(jobContainer.Runs.All(r => r.Success),
-				string.Format("folowing runs failed: {0}\n{1}",
-					string.Concat(jobContainer.Runs.Where(r => !r.Success).Select(r => r.Run.RunName + " - " + r.Run.CycleName)),
-					string.Concat(jobContainer.Runs.Select(r => r.ExecException))));
+				$"folowing runs failed: {string.Concat(jobContainer.Runs.Where(r => !r.Success).Select(r => r.Run.RunName + " - " + r.Run.CycleName))}\n" +
+				$"{string.Concat(jobContainer.Runs.Select(r => r.ExecException))}");
 		}
 
 		[TestCase, Category("LongRunning")]
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
index 8d59e5783e..255c280cec 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
@@ -629,7 +629,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
                     weight.SI<Kilogram>(),
                     0.SI<Kilogram>(),
                     false),
-                string.Format("ERROR: Could not find the declaration segment for vehicle. Category: {0}, AxleConfiguration: {1}, GrossVehicleWeight: {2}", VehicleCategory.RigidTruck, AxleConfiguration.AxleConfig_4x2.GetName(), weight.SI<Kilogram>()));
+                $"ERROR: Could not find the declaration segment for vehicle. " +
+                $"Category: {VehicleCategory.RigidTruck}, " +
+                $"AxleConfiguration: {AxleConfiguration.AxleConfig_4x2.GetName()}, " +
+                $"GrossVehicleWeight: {weight.SI<Kilogram>()}");
         }
 
         [
@@ -647,7 +650,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
                     weight.SI<Kilogram>(),
                     0.SI<Kilogram>(),
                     false),
-                    string.Format("ERROR: Could not find the declaration segment for vehicle. Category: {0}, AxleConfiguration: {1}, GrossVehicleWeight: {2}", VehicleCategory.RigidTruck, AxleConfiguration.AxleConfig_4x4.GetName(), weight.SI<Kilogram>()));
+                $"ERROR: Could not find the declaration segment for vehicle. " +
+                $"Category: {VehicleCategory.RigidTruck}, " +
+                $"AxleConfiguration: {AxleConfiguration.AxleConfig_4x4.GetName()}, " +
+                $"GrossVehicleWeight: {weight.SI<Kilogram>()}");
         }
         
         [Test,
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/VTPCycleValidationTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/VTPCycleValidationTest.cs
index 2a75872839..4ad8f1fdc2 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/VTPCycleValidationTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/VTPCycleValidationTest.cs
@@ -324,7 +324,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			
 			var cycleEntries = "";
 			for (var i = 0; i < 2000; i++)
-				cycleEntries += string.Format("  {0} ,    0,  600, 400, 500 , 500 , 100 , 100 , {1}, 3 \n", (i / 2.0).ToString(CultureInfo.InvariantCulture), ((fcLimit * 1.01 * (1 - i/100000.0)).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture));
+				cycleEntries += $"  {(i / 2.0).ToString(CultureInfo.InvariantCulture)} ,    0,  600, 400, 500 , 500 , 100 , 100 , {((fcLimit * 1.01 * (1 - i / 100000.0)).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture)}, 3 \n";
 
 			var container = new VehicleContainer(ExecutionMode.Declaration) {
 				RunData = new VectoRunData() {
@@ -354,7 +354,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 
 			var cycleEntries = "";
 			for (var i = 0; i < 2000; i++)
-				cycleEntries += string.Format("  {0} ,    0,  600, 400, 500 , 500 , 100 , 100 , {1}, 3 \n", (i / 2.0).ToString(CultureInfo.InvariantCulture), ((fcLimit * 1.0001).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture));
+				cycleEntries += $"  {(i / 2.0).ToString(CultureInfo.InvariantCulture)} ,    0,  600, 400, 500 , 500 , 100 , 100 , {((fcLimit * 1.0001).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture)}, 3 \n";
 
 			var container = new VehicleContainer(ExecutionMode.Declaration) {
 				RunData = new VectoRunData() {
@@ -383,7 +383,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 
 			var cycleEntries = "";
 			for (var i = 0; i < 2000; i++)
-				cycleEntries += string.Format("  {0} ,    0,  600, 400, 500 , 500 , 100 , 100 , {1}, 3 \n", (i / 2.0).ToString(CultureInfo.InvariantCulture), ((fcLimit * 0.99 * (1 + i / 100000.0)).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture));
+				cycleEntries += $"  {(i / 2.0).ToString(CultureInfo.InvariantCulture)} ,    0,  600, 400, 500 , 500 , 100 , 100 , {((fcLimit * 0.99 * (1 + i / 100000.0)).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture)}, 3 \n";
 
 			var container = new VehicleContainer(ExecutionMode.Declaration) {
 				RunData = new VectoRunData() {
@@ -412,7 +412,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 
 			var cycleEntries = "";
 			for (var i = 0; i < 2000; i++)
-				cycleEntries += string.Format("  {0} ,    0,  600, 400, 500 , 500 , 100 , 100 , {1}, 3 \n", (i / 2.0).ToString(CultureInfo.InvariantCulture), ((fcLimit * 0.9999).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture));
+				cycleEntries += $"  {(i / 2.0).ToString(CultureInfo.InvariantCulture)} ,    0,  600, 400, 500 , 500 , 100 , 100 , {((fcLimit * 0.9999).ConvertToGrammPerHour().Value).ToString(CultureInfo.InvariantCulture)}, 3 \n";
 
 			var container = new VehicleContainer(ExecutionMode.Declaration) {
 				RunData = new VectoRunData() {
diff --git a/VectoCore/VectoCoreTest/Utils/ResultFileHelper.cs b/VectoCore/VectoCoreTest/Utils/ResultFileHelper.cs
index d0d7bf5d0e..0f36502f3b 100644
--- a/VectoCore/VectoCoreTest/Utils/ResultFileHelper.cs
+++ b/VectoCore/VectoCoreTest/Utils/ResultFileHelper.cs
@@ -86,8 +86,9 @@ namespace TUGraz.VectoCore.Tests.Utils
 
 				if (testRowcount) {
 					Assert.AreEqual(expected.Rows.Count, actual.Rows.Count,
-						string.Format("Moddata: Row count differs.\nExpected {0} Rows in {1}\nGot {2} Rows in {3}", expected.Rows.Count,
-							result.expectedFile, actual.Rows.Count, result.actualFile));
+						$"Moddata: Row count differs.\n" +
+						$"Expected {expected.Rows.Count} Rows in {result.expectedFile}\n" +
+						$"Got {actual.Rows.Count} Rows in {result.actualFile}");
 				}
 
 				var actualCols = actual.Columns.Cast<DataColumn>().Select(x => x.ColumnName).OrderBy(x => x).ToList();
@@ -131,8 +132,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			var actual = VectoCSVFile.Read(actualFile, fullHeader: true);
 
 			Assert.AreEqual(expected.Rows.Count, actual.Rows.Count,
-				string.Format("SUM File row count differs.\nExpected {0} Rows in {1}\nGot {2} Rows in {3}", expected.Rows.Count,
-					expectedFile, actual.Rows.Count, actualFile));
+				$"SUM File row count differs.\nExpected {expected.Rows.Count} Rows in {expectedFile}\nGot {actual.Rows.Count} Rows in {actualFile}");
 
 			var actualCols = actual.Columns.Cast<DataColumn>().Select(x => x.ColumnName).OrderBy(x => x).ToList();
 			var expectedCols = expected.Columns.Cast<DataColumn>().Select(x => x.ColumnName).OrderBy(x => x).ToList();
diff --git a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
index ef8fd5a214..08500daf40 100644
--- a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
@@ -104,8 +104,8 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			Assert.AreEqual("560.00", fcMapTable.Rows[0][0]);
 			var fcMap = FuelConsumptionMapReader.Create(fcMapTable);
-			Assert.AreEqual(1256.SI(Unit.SI.Gramm.Per.Hour).Value(), 
-				fcMap.GetFuelConsumption(0.SI<NewtonMeter>(), 560.RPMtoRad(), false).Value.Value());
+			Assert.AreEqual(1256.SI(Unit.SI.Gramm.Per.Hour).Value(),
+				fcMap.GetFuelConsumption(0.SI<NewtonMeter>(), 560.RPMtoRad()).Value.Value());
 
 			var fldTable = engineDataProvider.EngineModes.First().FullLoadCurve;
 			Assert.AreEqual(10, fldTable.Rows.Count);
@@ -171,7 +171,6 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
 
 			var axleglosses = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
@@ -226,8 +225,8 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var tyre = axles[0].Tyre;
 			Assert.AreEqual("315/70 R22.5", tyre.Dimension);
-			Assert.AreEqual(0.0055,tyre.RollResistanceCoefficient);
-			Assert.AreEqual(31300,tyre.TyreTestLoad.Value());
+			Assert.AreEqual(0.0055, tyre.RollResistanceCoefficient);
+			Assert.AreEqual(31300, tyre.TyreTestLoad.Value());
 
 			tyre = axles[1].Tyre;
 			Assert.AreEqual("315/70 R22.5", tyre.Dimension);
@@ -246,16 +245,15 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var firstAxle = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle,
 				XMLNames.Vehicle_Components,
 				XMLNames.Component_AxleWheels,
 				XMLNames.ComponentDataWrapper,
-				XMLNames.AxleWheels_Axles) +
-												$"/*[@{XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr}={"1"}]"
-				);
+				XMLNames.AxleWheels_Axles) + $"/*[@{XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr}=1]"
+			);
 			firstAxle.MoveToAttribute(XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr, string.Empty);
 			firstAxle.SetTypedValue(2);
 
@@ -281,7 +279,6 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
 
 			var firstAxle = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
@@ -289,9 +286,8 @@ namespace TUGraz.VectoCore.Tests.XML
 				XMLNames.Vehicle_Components,
 				XMLNames.Component_AxleWheels,
 				XMLNames.ComponentDataWrapper,
-				XMLNames.AxleWheels_Axles) +
-												$"/*[@{XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr}={"1"}]"
-				);
+				XMLNames.AxleWheels_Axles) + $"/*[@{XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr}=1]"
+			);
 			firstAxle.MoveToAttribute(XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr, string.Empty);
 			firstAxle.SetTypedValue(0);
 
@@ -316,15 +312,15 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var firstAxle = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle,
 				XMLNames.Vehicle_Components,
 				XMLNames.Component_AxleWheels,
 				XMLNames.ComponentDataWrapper,
-				XMLNames.AxleWheels_Axles) + $"/*[@{XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr}={"1"}]"
-				);
+				XMLNames.AxleWheels_Axles) + $"/*[@{XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr}=1]"
+			);
 			firstAxle.MoveToAttribute(XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr, string.Empty);
 			firstAxle.SetTypedValue(3);
 
@@ -442,7 +438,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			AssertHelper.AreRelativeEqual(Constants.DefaultPowerShiftTime, gearboxData.PowershiftShiftTime);
 
 			var tcShiftStrategy = inputDataProvider.DriverInputData.GearshiftInputData;
-			
+
 			AssertHelper.AreRelativeEqual(DeclarationData.TorqueConverter.CCUpshiftMinAcceleration,
 				tcShiftStrategy.CCUpshiftMinAcceleration);
 			AssertHelper.AreRelativeEqual(DeclarationData.TorqueConverter.CLUpshiftMinAcceleration,
@@ -457,7 +453,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var accData = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
 				XMLNames.Component_DriverModel,
@@ -583,7 +579,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//Assert.AreEqual(0.811, gearboxData.PowershiftShiftTime.Value(), 1e-6); // only available for AT gearboxes
 
 			var tcShiftStrategy = inputDataProvider.DriverInputData.GearshiftInputData;
-			
+
 			Assert.AreEqual(0.134, tcShiftStrategy.CCUpshiftMinAcceleration.Value(), 1e-6);
 			Assert.AreEqual(0.133, tcShiftStrategy.CLUpshiftMinAcceleration.Value(), 1e-6);
 		}
@@ -650,7 +646,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 
 			var angledrivelosses = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
@@ -681,9 +677,9 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var aux = nav.SelectSingleNode(XMLHelper.QueryLocalName(
-				XMLNames.VectoInputEngineering, 
+				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle, XMLNames.Vehicle_Components, XMLNames.Component_Auxiliaries,
 				XMLNames.ComponentDataWrapper));
 			//accData.DeleteSelf();
@@ -717,7 +713,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 
 			var retarderType = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
@@ -726,7 +722,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			retarderType.SetValue("None");
 
 			var retarder = nav.SelectSingleNode(XMLHelper.QueryLocalName(
-				XMLNames.VectoInputEngineering, 
+				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle,
 				XMLNames.Vehicle_Components,
 				XMLNames.Component_Retarder));
@@ -741,7 +737,7 @@ namespace TUGraz.VectoCore.Tests.XML
 					new XAttribute(XMLNames.ExtResource_Type_Attr, XMLNames.ExtResource_Type_Value_CSV),
 					new XAttribute(XMLNames.ExtResource_File_Attr, "LongHaul")).ToString();
 			var aux = nav.SelectSingleNode(XMLHelper.QueryLocalName(
-				XMLNames.VectoInputEngineering, 
+				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle, XMLNames.Vehicle_Components, XMLNames.Component_Auxiliaries,
 				XMLNames.ComponentDataWrapper));
 			aux.InnerXml = "";
@@ -769,7 +765,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var engine = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle, XMLNames.Vehicle_Components, XMLNames.Component_Engine));
@@ -794,7 +790,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var cycles = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
 				XMLNames.VectoJob_MissionCycles));
@@ -826,9 +822,9 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var driverAcceleration = nav.SelectSingleNode(XMLHelper.QueryLocalName(
-				XMLNames.VectoInputEngineering, 
+				XMLNames.VectoInputEngineering,
 				XMLNames.Component_DriverModel, XMLNames.DriverModel_DriverAccelerationCurve));
 			//accData.DeleteSelf();
 			driverAcceleration.InnerXml =
@@ -857,7 +853,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var doc = new XmlDocument();
 			doc.Load(reader);
 			var nav = doc.CreateNavigator();
-			
+
 			var axlegearLossMap = nav.SelectSingleNode(XMLHelper.QueryLocalName(
 				XMLNames.VectoInputEngineering,
 				XMLNames.Component_Vehicle, XMLNames.Vehicle_Components, XMLNames.Component_Axlegear,
-- 
GitLab