private static void AssertWorkStatus(WorkStatus status, WorkTable.WorkHandlerType handlerType) { var expectedWorkStatusId = _workTable.GetWorkStatusIdCodeFromMap(status); var actualWorkStatusId = 0; actualWorkStatusId = _workTable.GetCurrentWorkStatusIdForHandlerType(handlerType); Assert.True( actualWorkStatusId.Equals(expectedWorkStatusId), "Work status id '" + actualWorkStatusId + "' is not equal to the expected one '" + expectedWorkStatusId + "'."); }
public void WaitAndAssertWorkStatus(WorkStatus expectedStatus, WorkTable.WorkHandlerType handlerType, double maxTimeToWait) { var sw = new Stopwatch(); sw.Start(); var expectedWorkStatusId = _workTable.GetWorkStatusIdCodeFromMap(expectedStatus); var actualWorkStatusId = 0; var erroredWorkStatusId = (int)WorkStatus.Errored; while (sw.Elapsed < TimeSpan.FromMinutes(maxTimeToWait)) { //try //{ // AssertWorkStatus(status, handlerType); // sw.Stop(); // return; //} //catch (AssertionException e) //{ // error = e.ToString(); //} actualWorkStatusId = _workTable.GetCurrentWorkStatusIdForHandlerType(handlerType); if (expectedWorkStatusId != erroredWorkStatusId && actualWorkStatusId == erroredWorkStatusId) { Assert.True(actualWorkStatusId.Equals(expectedWorkStatusId), "Work Status is Errored and it was not expected. Expected Work Status: '" + Enum.GetName(typeof(WorkStatus), expectedWorkStatusId) + "'. Waiting time (minutes): " + maxTimeToWait); } if (actualWorkStatusId.Equals(expectedWorkStatusId)) { sw.Stop(); return; } } sw.Stop(); Assert.True(actualWorkStatusId.Equals(expectedWorkStatusId), "Work status '" + Enum.GetName(typeof(WorkStatus), actualWorkStatusId) + "' is not equal to the expected one '" + Enum.GetName(typeof(WorkStatus), expectedWorkStatusId) + "'. Waiting time (minutes): " + maxTimeToWait); //throw new AssertionException(error); }