Skip to content
This repository was archived by the owner on Jan 10, 2025. It is now read-only.

Commit d5b1caa

Browse files
authored
[TouchRunner] TestFinished may be called on a background thread, so make sure to execute any UI logic on the main thread. (#60)
1 parent ba1196f commit d5b1caa

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

NUnitLite/TouchRunner/TouchRunner.cs

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -653,17 +653,19 @@ public override void TestFinished (ITestResult r)
653653
{
654654
base.TestFinished (r);
655655

656-
TestResult result = r as TestResult;
657-
TestSuite ts = result.Test as TestSuite;
658-
if (ts != null) {
659-
TestSuiteElement tse;
660-
if (suite_elements.TryGetValue (ts, out tse))
661-
tse.Update (result);
662-
} else {
663-
TestMethod tc = result.Test as TestMethod;
664-
if (tc != null)
665-
case_elements [tc].Update (result);
666-
}
656+
ExecuteOnMainThread (() => {
657+
TestResult result = r as TestResult;
658+
TestSuite ts = result.Test as TestSuite;
659+
if (ts != null) {
660+
TestSuiteElement tse;
661+
if (suite_elements.TryGetValue (ts, out tse))
662+
tse.Update (result);
663+
} else {
664+
TestMethod tc = result.Test as TestMethod;
665+
if (tc != null)
666+
case_elements [tc].Update (result);
667+
}
668+
});
667669
}
668670

669671
protected override void WriteDeviceInformation (TextWriter writer)

0 commit comments

Comments
 (0)