public static TestState GetTestStateFromUFTReport(TestRunResults runDesc, string[] resultFiles)
{
try
{
TestState finalState = TestState.Unknown;
foreach (string resultsFileFullPath in resultFiles)
{
finalState = TestState.Unknown;
string desc = "";
TestState state = GetStateFromUFTResultsFile(resultsFileFullPath, out desc);
if (finalState == TestState.Unknown || finalState == TestState.Passed)
{
finalState = state;
if (!string.IsNullOrWhiteSpace(desc))
{
if (finalState == TestState.Error)
{
runDesc.ErrorDesc = desc;
}
if (finalState == TestState.Failed)
{
runDesc.FailureDesc = desc;
}
}
}
}
if (finalState == TestState.Unknown)
finalState = TestState.Passed;
if (finalState == TestState.Failed && string.IsNullOrWhiteSpace(runDesc.FailureDesc))
runDesc.FailureDesc = "Test failed";
runDesc.TestState = finalState;
return runDesc.TestState;
}
catch (Exception e)
{
return TestState.Unknown;
}
}