diff --git a/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestCoach.cs b/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestCoach.cs
index 5b36881d0687e30764fed1467e1f13a5a356d993..9125c56041aa9a18988217a6a9865251ccaf62c3 100644
--- a/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestCoach.cs
+++ b/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestCoach.cs
@@ -10,7 +10,7 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		[TestInitialize]
 		public void DisableLogging()
 		{
-			LogManager.DisableLogging();
+			//LogManager.DisableLogging();
 			//GraphWriter.Disable();
 		}
 
@@ -30,7 +30,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_Level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_level.vmod");
@@ -40,7 +43,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphilll_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_uphill_5.vmod");
@@ -51,7 +57,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_downhill_5.vmod");
@@ -62,7 +71,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_uphill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_uphill_25.vmod");
@@ -72,7 +84,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_downhill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_downhill_25.vmod");
@@ -82,7 +97,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_uphill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_uphill_15.vmod");
@@ -92,7 +110,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_60_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_60_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_60_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_60_downhill_15.vmod");
@@ -102,7 +123,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_level.vmod");
@@ -112,7 +136,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_uphill_1()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_1);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_1.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_1.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_uphill_1.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_uphill_1.vmod");
@@ -122,7 +149,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_uphill_2()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_2);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_2.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_2.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_uphill_2.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_uphill_2.vmod");
@@ -132,7 +162,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_uphill_5.vmod");
@@ -142,7 +175,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_downhill_5.vmod");
@@ -152,7 +188,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_uphill_25.vmod");
@@ -162,7 +201,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_downhill_25.vmod");
@@ -172,7 +214,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_uphill_10()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_10);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_10.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_uphill_10.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_uphill_10.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_uphill_10.vmod");
@@ -182,7 +227,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_0_85_downhill_15.vmod");
@@ -192,7 +240,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_stop_0_85_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_stop_0_85_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_stop_0_85_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_stop_0_85_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_stop_0_85_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_stop_0_85_level.vmod");
@@ -203,7 +254,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_20_22_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_22_uphill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_22_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_20_22_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_20_22_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Accelerate_20_22_uphill_5.vmod");
@@ -217,7 +271,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_22_20_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_22_20_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_22_20_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_22_20_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_22_20_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_22_20_downhill_5.vmod");
@@ -227,7 +284,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_60_20_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_level.vmod");
@@ -237,7 +297,7 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_45_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_45_0_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_45_0_level.vmod");
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_45_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_45_0_level.vmod");
@@ -247,7 +307,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_45_0_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_uphill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_45_0_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_45_0_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_45_0_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_45_0_uphill_5.vmod");
@@ -257,7 +320,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_45_0_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_45_0_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_45_0_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_45_0_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_45_0_downhill_5.vmod");
@@ -267,7 +333,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_60_20_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_uphill_5.vmod");
@@ -277,7 +346,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_60_20_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_downhill_5.vmod");
@@ -287,7 +359,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_60_20_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_uphill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_uphill_25.vmod");
@@ -297,7 +372,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_60_20_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_downhill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_downhill_25.vmod");
@@ -307,7 +385,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_60_20_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_uphill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_uphill_15.vmod");
@@ -317,7 +398,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_60_20_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_60_20_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_60_20_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_60_20_downhill_15.vmod");
@@ -327,7 +411,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_level.vmod");
@@ -337,7 +424,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_80_0_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_uphill_5.vmod");
@@ -347,7 +437,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_80_0_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_downhill_5.vmod");
@@ -357,7 +450,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_80_0_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_steep_uphill_25.vmod");
@@ -367,7 +463,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_80_0_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_downhill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_downhill_25.vmod");
@@ -377,7 +476,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_80_0_uphill_3()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_3);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_uphill_3.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_uphill_3.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_uphill_3.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_uphill_3.vmod");
@@ -387,7 +489,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_80_0_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_steep_uphill_15.vmod");
@@ -397,7 +502,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Decelerate_80_0_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Decelerate_80_0_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Decelerate_80_0_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Decelerate_80_0_downhill_15.vmod");
@@ -411,7 +519,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_level.vmod");
@@ -421,7 +532,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_uphill_5.vmod");
@@ -431,7 +545,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_downhill_5.vmod");
@@ -441,7 +558,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_20_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_20_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_20_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_20_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_20_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_20_downhill_15.vmod");
@@ -451,7 +571,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_30_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_30_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_30_downhill_15.vmod");
@@ -461,7 +584,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_50_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_50_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_50_downhill_15.vmod");
@@ -471,7 +597,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_uphill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_uphill_25.vmod");
@@ -481,7 +610,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_downhill_15.vmod");
@@ -491,7 +623,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_uphill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_uphill_15.vmod");
@@ -501,7 +636,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_10_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_level.vmod");
@@ -515,7 +653,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 				"   0,  10, 5,    0",
 				"800,  10, 5,    0",
 			});
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_uphill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_uphill_5.vmod");
@@ -525,7 +666,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_10_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_downhill_5.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_downhill_5.vmod");
@@ -535,7 +679,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_10_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_downhill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_downhill_25.vmod");
@@ -545,7 +692,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_10_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_25);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_uphill_25.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_uphill_25.vmod");
@@ -555,7 +705,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_10_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_downhill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_downhill_15.vmod");
@@ -565,7 +718,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_10_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_15);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_uphill_15.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_10_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_10_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_10_uphill_15.vmod");
@@ -579,7 +735,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_slope_inc.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_slope_inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_slope_inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_Increasing_Slope.vmod");
@@ -589,7 +748,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_50_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_slope_inc.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_slope_inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_50_slope_inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_50_Increasing_Slope.vmod");
@@ -599,7 +761,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_30_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_slope_inc.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_slope_inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_30_slope_inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_30_Increasing_Slope.vmod");
@@ -609,7 +774,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_Decreasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_slope_dec.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_slope_dec.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_slope_dec.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_Decreasing_Slope.vmod");
@@ -619,7 +787,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_50_Decreasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_slope_dec.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_slope_dec.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_50_slope_dec.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_50_Decreasing_Slope.vmod");
@@ -629,7 +800,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_30_Decreasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_slope_dec.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_slope_dec.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_30_slope_dec.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_30_Decreasing_Slope.vmod");
@@ -639,7 +813,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_80_Dec_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_slope_dec-inc.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_80_slope_dec-inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_80_slope_dec-inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_80_Dec_Increasing_Slope.vmod");
@@ -649,7 +826,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_50_Dec_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_slope_dec-inc.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_50_slope_dec-inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_50_slope_dec-inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_50_Dec_Increasing_Slope.vmod");
@@ -660,7 +840,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_30_Dec_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_slope_dec-inc.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_30_slope_dec-inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_30_slope_dec-inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_30_Dec_Increasing_Slope.vmod");
@@ -674,7 +857,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_DecelerateWhileBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_DecelerateWhileBrake_80_0_level.vmod");
@@ -684,7 +870,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_AccelerateWhileBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_AccelerateWhileBrake_80_0_level.vmod");
@@ -694,7 +883,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_AccelerateAtBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_AccelerateAtBrake_80_0_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_AccelerateAtBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_AccelerateAtBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_AccelerateAtBrake_80_0_level.vmod");
@@ -704,7 +896,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_AccelerateBeforeBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_AccelerateBeforeBrake_80_0_level.vmod");
@@ -714,7 +909,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Drive_stop_85_stop_85_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_stop_85_stop_85_level.vmod").Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Drive_stop_85_stop_85_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Drive_stop_85_stop_85_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach\24t Coach_Cycle_Drive_stop_85_stop_85_level.vmod");
@@ -728,8 +926,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_downhill_5_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_85_downhill_5.vmod");
@@ -739,8 +940,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_downhill_3_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_3);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_85_downhill_3.vmod");
@@ -751,8 +955,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_85_downhill_1_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_1);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_85_downhill_1.vmod");
@@ -763,8 +970,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_60_downhill_5_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_60_downhill_5.vmod");
@@ -774,8 +984,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_60_downhill_3_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_3);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_60_downhill_3.vmod");
@@ -786,8 +999,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_60_downhill_1_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_1);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_60_downhill_1.vmod");
@@ -798,8 +1014,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_40_downhill_5_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_5);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_40_downhill_5.vmod");
@@ -809,8 +1028,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_40_downhill_3_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_3);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_40_downhill_3.vmod");
@@ -821,8 +1043,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Coach_Accelerate_0_40_downhill_1_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_1);
-			CoachPowerTrain.CreateEngineeringRun(cycle, "Coach_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod", true)
-				.Run();
+			var run = CoachPowerTrain.CreateEngineeringRun(cycle,
+				"Coach_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Coach_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\Coach_Overspeed\24t Coach_Cycle_Accelerate_0_40_downhill_1.vmod");
diff --git a/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs b/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs
index 4c96b6609cc2980082a02407c5b6fa03f16d91ed..486b6bc459991a179bcf9d70ced441cc181f766c 100644
--- a/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs
+++ b/VectoCoreTest/Integration/DriverStrategy/DriverStrategyTestTruck.cs
@@ -21,7 +21,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_Level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_level.vmod");
@@ -31,7 +34,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphilll_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_uphill_5.vmod");
@@ -42,7 +48,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_downhill_5.vmod");
@@ -53,7 +62,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_uphill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_uphill_25.vmod");
@@ -63,7 +75,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_downhill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_downhill_25.vmod");
@@ -73,7 +88,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_uphill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_uphill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_uphill_15.vmod");
@@ -83,7 +101,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_60_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_60_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_60_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_60_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_60_downhill_15.vmod");
@@ -93,7 +114,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_level.vmod");
@@ -103,7 +127,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_uphill_1()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_1);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_1.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_1.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_1.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_1.vmod");
@@ -113,7 +140,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_uphill_2()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_2);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_2.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_2.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_2.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_2.vmod");
@@ -123,7 +153,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_5.vmod");
@@ -143,7 +176,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_25.vmod");
@@ -153,7 +189,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_25.vmod");
@@ -163,7 +202,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_uphill_10()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_uphill_10);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_10.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_uphill_10.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_uphill_10.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_uphill_10.vmod");
@@ -173,7 +215,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_15.vmod");
@@ -183,7 +228,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_stop_0_85_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_stop_0_85_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_stop_0_85_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_stop_0_85_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_stop_0_85_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_stop_0_85_level.vmod");
@@ -194,7 +242,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_20_22_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_20_22_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_22_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_20_22_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_20_22_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Accelerate_20_22_uphill_5.vmod");
@@ -208,7 +259,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_22_20_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_22_20_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_22_20_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_22_20_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_22_20_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_22_20_downhill_5.vmod");
@@ -218,7 +272,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_60_20_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_level.vmod");
@@ -228,7 +285,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_45_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_45_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_45_0_level.vmod");
@@ -238,7 +298,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_45_0_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_45_0_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_45_0_uphill_5.vmod");
@@ -248,7 +311,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_45_0_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_45_0_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_45_0_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_45_0_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_45_0_downhill_5.vmod");
@@ -258,7 +324,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_60_20_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_uphill_5.vmod");
@@ -268,7 +337,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_60_20_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_downhill_5.vmod");
@@ -278,7 +350,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_60_20_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_uphill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_uphill_25.vmod");
@@ -288,7 +363,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_60_20_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_downhill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_downhill_25.vmod");
@@ -298,7 +376,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_60_20_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_uphill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_uphill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_uphill_15.vmod");
@@ -308,7 +389,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_60_20_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_60_20_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_60_20_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_60_20_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_60_20_downhill_15.vmod");
@@ -318,7 +402,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_level.vmod");
@@ -328,7 +415,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_80_0_uphill_3()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_3);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_uphill_3.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_uphill_3.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_uphill_3.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_uphill_3.vmod");
@@ -345,15 +435,21 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 			};
 
 			var cycle = SimpleDrivingCycles.CreateCycleData(data);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_SlopeChangeDuringCoast.vmod")
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Decelerate_80_0_SlopeChangeDuringCoast.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
 		[TestMethod, Ignore]
 		public void Truck_Decelerate_80_0_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_uphill_5.vmod");
@@ -363,7 +459,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_80_0_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_downhill_5.vmod");
@@ -373,7 +472,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_80_0_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_steep_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_steep_uphill_25.vmod");
@@ -383,7 +485,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_80_0_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_downhill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_downhill_25.vmod");
@@ -393,7 +498,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Decelerate_80_0_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_uphill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_steep_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_steep_uphill_15.vmod");
@@ -403,12 +511,35 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Decelerate_80_0_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerate_80_0_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_80_0_downhill_15.vmod");
 		}
 
+		[TestMethod]
+		public void Truck_Decelerate_20_0_downhill_2()
+		{
+			var cycleData = new string[] {
+				// <s>,<v>,<grad>,<stop>
+				"   0,  20, -1.8,  0",
+				"2052,  0,  -1.8,  2"
+			};
+			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Decelerate_20_0_downhill_2_RefLoad.vmod",
+				7500.SI<Kilogram>(), 12900.SI<Kilogram>());
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
+
+			//GraphWriter.Write("Truck_DriverStrategy_Decelerate_80_0_downhill_15.vmod",
+			//	@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Decelerate_20_0_downhill_2_RefLoad.vmod");
+		}
+
 		#endregion
 
 		#region Drive
@@ -417,7 +548,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_level.vmod");
@@ -427,7 +561,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_uphill_5.vmod");
@@ -437,7 +574,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_downhill_5.vmod");
@@ -447,7 +587,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_20_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_20_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_20_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_20_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_20_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_20_downhill_15.vmod");
@@ -457,7 +600,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_30_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_30_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_downhill_15.vmod");
@@ -467,7 +613,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_50_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_50_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_downhill_15.vmod");
@@ -477,7 +626,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_uphill_25.vmod");
@@ -487,7 +639,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_downhill_15.vmod");
@@ -497,7 +652,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_uphill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_uphill_15.vmod");
@@ -507,7 +665,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_level.vmod");
@@ -517,7 +678,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_uphill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_uphill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_uphill_5.vmod");
@@ -527,7 +691,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_downhill_5()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_5.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_5.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_downhill_5.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_downhill_5.vmod");
@@ -537,7 +704,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_downhill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_downhill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_downhill_25.vmod");
@@ -547,7 +717,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_uphill_25()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_25);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_25.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_25.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_uphill_25.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_uphill_25.vmod");
@@ -557,7 +730,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_downhill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_downhill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_downhill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_downhill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_downhill_15.vmod");
@@ -567,7 +743,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_10_uphill_15()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_10_uphill_15);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_15.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_10_uphill_15.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_10_uphill_15.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_10_uphill_15.vmod");
@@ -581,7 +760,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Increasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_inc.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_slope_inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_Increasing_Slope.vmod");
@@ -591,7 +773,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_50_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Increasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_inc.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_50_slope_inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_Increasing_Slope.vmod");
@@ -601,7 +786,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_30_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Increasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_inc.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_30_slope_inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_Increasing_Slope.vmod");
@@ -611,7 +799,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_Decreasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Decreasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_dec.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_dec.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_slope_dec.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_Decreasing_Slope.vmod");
@@ -621,7 +812,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_50_Decreasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Decreasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_dec.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_dec.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_50_slope_dec.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_Decreasing_Slope.vmod");
@@ -631,7 +825,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_30_Decreasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Decreasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_dec.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_dec.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_30_slope_dec.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_Decreasing_Slope.vmod");
@@ -641,7 +838,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_80_Dec_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_80_Dec_Increasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_80_slope_dec-inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_80_Dec_Increasing_Slope.vmod");
@@ -651,7 +851,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_50_Dec_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_50_Dec_Increasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_50_slope_dec-inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_50_Dec_Increasing_Slope.vmod");
@@ -662,7 +865,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_30_Dec_Increasing_Slope()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_30_Dec_Increasing_Slope);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_30_slope_dec-inc.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_30_Dec_Increasing_Slope.vmod");
@@ -676,7 +882,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_DecelerateWhileBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDecelerateWhileBrake_80_0_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_DecelerateWhileBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_DecelerateWhileBrake_80_0_level.vmod");
@@ -686,7 +895,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_AccelerateWhileBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateWhileBrake_80_0_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_AccelerateWhileBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_AccelerateWhileBrake_80_0_level.vmod");
@@ -696,7 +908,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_AccelerateAtBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateAtBrake_80_0_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_AccelerateAtBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_AccelerateAtBrake_80_0_level.vmod");
@@ -706,7 +921,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_AccelerateBeforeBrake_80_0_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerateBeforeBrake_80_0_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_AccelerateBeforeBrake_80_0_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_AccelerateBeforeBrake_80_0_level.vmod");
@@ -716,7 +934,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Drive_stop_85_stop_85_level()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleDrive_stop_85_stop_85_level);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod").Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Drive_stop_85_stop_85_level.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck\40t_Long_Haul_Truck_Cycle_Drive_stop_85_stop_85_level.vmod");
@@ -733,8 +954,12 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 			};
 
 			var cycle = SimpleDrivingCycles.CreateCycleData(data);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_48_52_beforeStop_level.vmod",
-				7500.SI<Kilogram>(), 19000.SI<Kilogram>()).Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_48_52_beforeStop_level.vmod",
+				7500.SI<Kilogram>(), 19000.SI<Kilogram>());
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			//GraphWriter.Write("Truck_DriverStrategy_Accelerate_48_52_beforeStop_level.vmod");
 		}
@@ -747,8 +972,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_downhill_5_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_5-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_5.vmod");
@@ -758,8 +986,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_downhill_3_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_3);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_3-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_3.vmod");
@@ -770,8 +1001,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_85_downhill_1_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_85_downhill_1);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_85_downhill_1-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_85_downhill_1.vmod");
@@ -782,8 +1016,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_60_downhill_5_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_60_downhill_5-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_60_downhill_5.vmod");
@@ -793,8 +1030,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_60_downhill_3_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_3);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_60_downhill_3-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_60_downhill_3.vmod");
@@ -805,8 +1045,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_60_downhill_1_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_60_downhill_1);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_60_downhill_1-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_60_downhill_1.vmod");
@@ -817,8 +1060,8 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_40_downhill_5_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_5);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod", true);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_40_downhill_5-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_40_downhill_5.vmod");
@@ -828,8 +1071,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_40_downhill_3_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_3);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_40_downhill_3-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_40_downhill_3.vmod");
@@ -840,8 +1086,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void Truck_Accelerate_0_40_downhill_1_overspeed()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(SimpleDrivingCycles.CycleAccelerate_0_40_downhill_1);
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle,
+				"Truck_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod", true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 
 			GraphWriter.Write("Truck_DriverStrategy_Accelerate_0_40_downhill_1-overspeed.vmod",
 				@"..\..\TestData\Integration\DriverStrategy\Vecto2.2\40t Truck_Overspeed\40t_Long_Haul_Truck_Cycle_Accelerate_0_40_downhill_1.vmod");
@@ -859,8 +1108,11 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 			};
 			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
 
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_Decelerate-overspeed.vmod", true)
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_Accelerate_Decelerate-overspeed.vmod",
+				true);
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
 		[TestMethod]
@@ -874,8 +1126,10 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 			};
 			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
 
-			Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_SlopeChangeBeforeStop.vmod")
-				.Run();
+			var run = Truck40tPowerTrain.CreateEngineeringRun(cycle, "Truck_DriverStrategy_SlopeChangeBeforeStop.vmod");
+
+			run.Run();
+			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
 		[TestMethod]
diff --git a/VectoCoreTest/Integration/FullCycleDeclarationTest.cs b/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
index 654f193d225713abefb6dd80198f22906d01a9a0..9039d8c8fd392ac9e0d132914fb73a3138c89302 100644
--- a/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
+++ b/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
@@ -16,7 +16,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		[TestMethod]
 		public void Truck40tDeclarationTest()
 		{
-			//LogManager.DisableLogging();
+			LogManager.DisableLogging();
 
 			var factory = new SimulatorFactory(SimulatorFactory.FactoryMode.DeclarationMode, TruckDeclarationJob);
 			var sumFileName = Path.GetFileNameWithoutExtension(TruckDeclarationJob) + Constants.FileExtensions.SumFile;
@@ -26,6 +26,10 @@ namespace TUGraz.VectoCore.Tests.Integration
 			jobContainer.AddRuns(factory);
 
 			jobContainer.Execute();
+
+			foreach (var run in jobContainer._runs) {
+				Assert.IsTrue(run.FinishedWithoutErrors);
+			}
 		}
 	}
 }
\ No newline at end of file