// Copyright Keysight Technologies 2012-2019 // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, you can obtain one at http://mozilla.org/MPL/2.0/. using System; namespace OpenTap.Engine.UnitTests { public class ProgressBarTest : TestStep { public double Sleep { get; set; } public int Fraction { get; set; } public int Step { get; set; } public int Start { get; set; } public string PreMessage { get; set; } public ProgressBarTest() { Sleep = 0.1; Fraction = 100; Step = 1; Start = 0; PreMessage = "Progress"; } public override void Run() { Random rand = new Random(); var watch2 = System.Diagnostics.Stopwatch.StartNew(); Log.Info("{2} [{0}/{1}]", 0, Fraction, PreMessage); for (int i = Start; i < Fraction; i += Step) { var watch = System.Diagnostics.Stopwatch.StartNew(); TapThread.Sleep((int)(1000 * Sleep + rand.Next() % 100)); Log.Debug("{2} [{0}/{1}]", i, Fraction, PreMessage); } Log.Debug("{1} [{0}/{0}] Completed", Fraction, PreMessage); Log.Info(watch2, "Simulating progress..."); } } }