/// <summary> /// Determines whether DTM (HISTOROM module) is offline /// </summary> /// <returns> /// true: if DTM is offline /// false: if DTM is online or an error occurred /// </returns> public bool Run() { var watch = new Stopwatch(); string state = new StatusBar().ConnectionState; if (state == null) { EH.PCPS.TestAutomation.Common.Tools.Log.Error(LogInfo.Namespace(MethodBase.GetCurrentMethod()), "Connection State is null"); return(false); } watch.Start(); while (watch.ElapsedMilliseconds <= DefaultValues.iTimeoutMedium) { state = new StatusBar().ConnectionState; if (!state.Equals("Offline")) { continue; } EH.PCPS.TestAutomation.Common.Tools.Log.Info(LogInfo.Namespace(MethodBase.GetCurrentMethod()), "DTM is disconnected after " + watch.ElapsedMilliseconds + " milliseconds. (Timeout: " + DefaultValues.iTimeoutMedium + " milliseconds)"); return(true); } watch.Stop(); EH.PCPS.TestAutomation.Common.Tools.Log.Info(LogInfo.Namespace(MethodBase.GetCurrentMethod()), "DTM is not disconnected within " + DefaultValues.iTimeoutMedium + " milliseconds"); return(false); }
/// <summary> /// Determines whether DTM (HISTOROM module) is online /// </summary> /// <returns> /// true: if DTM is online /// false: if DTM is offline or an error occurred /// </returns> public bool Run() { var watch = new Stopwatch(); string state = new StatusBar() .ConnectionState; if (state == null) { EH.PCPS.TestAutomation.Common.Tools.Log.Error(LogInfo.Namespace(MethodBase.GetCurrentMethod()), "Connection State is null"); return(false); } watch.Start(); // timeout needed, state can be "going online" for several seconds depending on communication and whether historom module or another module is already open while (watch.ElapsedMilliseconds <= DefaultValues.iTimeoutMedium) { state = new StatusBar().ConnectionState; if (!state.Equals("Online")) { continue; } EH.PCPS.TestAutomation.Common.Tools.Log.Info(LogInfo.Namespace(MethodBase.GetCurrentMethod()), "DTM is connected after " + watch.ElapsedMilliseconds + " milliseconds. (Timeout: " + DefaultValues.iTimeoutMedium + " milliseconds)"); return(true); } watch.Stop(); EH.PCPS.TestAutomation.Common.Tools.Log.Info(LogInfo.Namespace(MethodBase.GetCurrentMethod()), "DTM is not connected after " + DefaultValues.iTimeoutMedium + " milliseconds"); return(false); }