From 20c7b07cb985f86a4d9121a636ddcd32c60bcdf2 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Sat, 10 Dec 2016 07:33:44 +0100 Subject: [PATCH] Endurance : Switching test : Progress bar update and statistics added. --- .../TestMethods/Endurance/EnduranceSeq.cs | 64 +++++++++++++++---- .../Resources/Strings.Designer.cs | 18 ++++++ TestBenchFramework/Resources/Strings.resx | 6 ++ 3 files changed, 76 insertions(+), 12 deletions(-) diff --git a/TestBenchFramework/BenchControl/TestMethods/Endurance/EnduranceSeq.cs b/TestBenchFramework/BenchControl/TestMethods/Endurance/EnduranceSeq.cs index 0d141eb20..f16d246d4 100644 --- a/TestBenchFramework/BenchControl/TestMethods/Endurance/EnduranceSeq.cs +++ b/TestBenchFramework/BenchControl/TestMethods/Endurance/EnduranceSeq.cs @@ -121,6 +121,7 @@ namespace TBF.BenchControl.TestMethods.Endurance int flowSetTime = StateMachine.Time - flowSetTime0; double currentFlow = RefFlow.Val; + if (test.Part <= 3) /// 0 = measurement /// 1 = measurement through line 1 /// 2 = measurement through line 2 @@ -398,6 +399,14 @@ namespace TBF.BenchControl.TestMethods.Endurance /// Endurance test : switching mode /// + + //------------------------------------------------ + Bridge.OnActivity(this, Strings.Endurance_cycle_execution); + //------------------------------------------------ + + int estimtdEndTime = StateMachine.Time + (int)test.TstTime; + ClearAllStatistics(); + /// /// Update CyclePar[] array /// @@ -420,15 +429,9 @@ namespace TBF.BenchControl.TestMethods.Endurance cyclePar[2 * stepsCount + 1] = 0; cyclePar[2 * stepsCount + 2] = 0; cyclePar[0] = duration / 10; - - uint[] originalCyclePar = cBrd.CyclePar; - - cBrd.CyclePar = cyclePar; - - - //------------------------------------------------ - Bridge.OnActivity(this, Strings.Endurance_cycle_execution); - //------------------------------------------------ + /// + cBrd.CyclePar = cyclePar; + /// State.Create("Endurance : Cycle parameters upload") .AddOperation(checkUiOp) .AddOperation(benchPath.TempMtrUp.ReadTempOp(ref TempUp)) @@ -446,11 +449,17 @@ namespace TBF.BenchControl.TestMethods.Endurance e = StateMachine.WaitRunDevsRunOps(); if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; } if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; } + + RefFreq.Val = cBrd.ReferenceFreq; + RefFlow.Val = cBrd.ReferenceFlow; + + UpdateAllStatistics(); } while (!e.Contains(Event.CommandCompleted)); - bool stopInProgress = false; + bool stopInProgress = false; + /// State.Create("Endurance : Cycle execution") .AddOperation(checkUiOp) .AddOperation(new Operations.TimerOp((int)test.TstTime, Event.TimerExpired)) @@ -473,11 +482,34 @@ namespace TBF.BenchControl.TestMethods.Endurance stopInProgress = true; break; } + + //------------------------------------------------ + int remainingTime = Math.Max(estimtdEndTime - StateMachine.Time, 0); + if (remainingTime > 60) + { + Bridge.OnActivity(this, string.Format("{0} ... {1} {2} {3} {4}", Strings.Test_in_progress, remainingTime / 60, "min", remainingTime % 60, Strings.sec)); + } + else + { + Bridge.OnActivity(this, string.Format("{0} ... {1} s", Strings.Test_in_progress, remainingTime)); + } + //------------------------------------------------ + + RefFreq.Val = cBrd.ReferenceFreq; + RefFlow.Val = cBrd.ReferenceFlow; + + UpdateAllStatistics(); + + Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.Test)); + Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.Test)); } while (!e.Contains(Event.TimerExpired) && !e.Contains(Event.Next)); - State.Create("Endurance : Extra delay to be sure the last endurance cycle completed") + //------------------------------------------------ + Bridge.OnActivity(this, Strings.Last_cycle_wait_please); + //------------------------------------------------ + State.Create("Endurance : Extra delay to be sure the last endurance cycle completed") .AddOperation(checkUiOp) .AddOperation(new Operations.TimerOp((int)(duration / 1000) + 1, Event.TimerExpired)) .AddOperation(benchPath.TempMtrUp.ReadTempOp(ref TempUp)) @@ -497,7 +529,15 @@ namespace TBF.BenchControl.TestMethods.Endurance { stopInProgress = true; } - } + + RefFreq.Val = cBrd.ReferenceFreq; + RefFlow.Val = cBrd.ReferenceFlow; + + UpdateAllStatistics(); + + Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.Test)); + Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.Test)); + } while (!e.Contains(Event.TimerExpired) && !e.Contains(Event.Next)); diff --git a/TestBenchFramework/Resources/Strings.Designer.cs b/TestBenchFramework/Resources/Strings.Designer.cs index d6f0821f1..1ced80ac5 100644 --- a/TestBenchFramework/Resources/Strings.Designer.cs +++ b/TestBenchFramework/Resources/Strings.Designer.cs @@ -1761,6 +1761,15 @@ namespace TBF.Resources { } } + /// + /// Looks up a localized string similar to Last cycle, wait please.. + /// + internal static string Last_cycle_wait_please { + get { + return ResourceManager.GetString("Last_cycle_wait_please", resourceCulture); + } + } + /// /// Looks up a localized string similar to Less. /// @@ -4401,6 +4410,15 @@ namespace TBF.Resources { } } + /// + /// Looks up a localized string similar to Wait please. + /// + internal static string Wait_please { + get { + return ResourceManager.GetString("Wait_please", resourceCulture); + } + } + /// /// Looks up a localized string similar to Warning. /// diff --git a/TestBenchFramework/Resources/Strings.resx b/TestBenchFramework/Resources/Strings.resx index e8194be86..b8ef4e401 100644 --- a/TestBenchFramework/Resources/Strings.resx +++ b/TestBenchFramework/Resources/Strings.resx @@ -1606,4 +1606,10 @@ Endurance cycle execution + + Last cycle, wait please. + + + Wait please + \ No newline at end of file