Fix issue with manually canceling running tests...

...by restructuring TestOutputReader.

Change-Id: Ia58b755a5b50afb66d53e9d254e450cce01621f4
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
This commit is contained in:
Christian Stenger
2016-01-20 08:26:10 +01:00
parent e60a7a6923
commit 166bf38a11
3 changed files with 179 additions and 136 deletions

View File

@@ -135,8 +135,15 @@ static void performTestRun(QFutureInterface<TestResult *> &futureInterface,
futureInterface.setProgressValue(0);
foreach (const TestConfiguration *testConfiguration, selectedTests) {
TestOutputReader outputReader(futureInterface, &testProcess, testConfiguration->testType());
Q_UNUSED(outputReader);
QScopedPointer<TestOutputReader> outputReader;
switch (testConfiguration->testType()) {
case TestTypeQt:
outputReader.reset(new QtTestOutputReader(futureInterface, &testProcess));
break;
case TestTypeGTest:
outputReader.reset(new GTestOutputReader(futureInterface, &testProcess));
break;
}
if (futureInterface.isCanceled())
break;