Search in sources :

Example 1 with TestOutputEvent

use of com.intellij.execution.testframework.sm.runner.events.TestOutputEvent in project buck by facebook.

the class BuckToGeneralTestEventsConverter method consumeTestResultsAvailable.

@Override
public void consumeTestResultsAvailable(long timestamp, TestResults testResults) {
    final GeneralTestEventsProcessor processor = getProcessor();
    if (processor == null) {
        return;
    }
    for (TestCaseSummary suite : testResults.getTestCases()) {
        if (suite.getTestResults().isEmpty()) {
            continue;
        }
        final String locationUrl = null;
        processor.onSuiteStarted(new TestSuiteStartedEvent(suite.getTestCaseName(), locationUrl));
        for (TestResultsSummary test : suite.getTestResults()) {
            final String testName = test.getTestName();
            processor.onTestStarted(new TestStartedEvent(testName, null));
            final String stdOut = test.getStdOut();
            if (stdOut != null) {
                processor.onTestOutput(new TestOutputEvent(testName, stdOut, true));
            }
            final String stdErr = test.getStdErr();
            if (stdErr != null) {
                processor.onTestOutput(new TestOutputEvent(testName, stdErr, false));
            }
            if (test.getType() == ResultType.FAILURE) {
                processor.onTestFailure(new TestFailedEvent(testName, "", test.getStacktrace(), true, null, null));
            } else {
                processor.onTestFinished(new TestFinishedEvent(testName, test.getTime()));
            }
        }
        processor.onSuiteFinished(new TestSuiteFinishedEvent(suite.getTestCaseName()));
    }
}
Also used : TestStartedEvent(com.intellij.execution.testframework.sm.runner.events.TestStartedEvent) GeneralTestEventsProcessor(com.intellij.execution.testframework.sm.runner.GeneralTestEventsProcessor) TestOutputEvent(com.intellij.execution.testframework.sm.runner.events.TestOutputEvent) TestFinishedEvent(com.intellij.execution.testframework.sm.runner.events.TestFinishedEvent) TestSuiteStartedEvent(com.intellij.execution.testframework.sm.runner.events.TestSuiteStartedEvent) TestCaseSummary(com.facebook.buck.intellij.ideabuck.ws.buckevents.parts.TestCaseSummary) TestSuiteFinishedEvent(com.intellij.execution.testframework.sm.runner.events.TestSuiteFinishedEvent) TestResultsSummary(com.facebook.buck.intellij.ideabuck.ws.buckevents.parts.TestResultsSummary) TestFailedEvent(com.intellij.execution.testframework.sm.runner.events.TestFailedEvent)

Example 2 with TestOutputEvent

use of com.intellij.execution.testframework.sm.runner.events.TestOutputEvent in project intellij by bazelbuild.

the class BlazeXmlToTestEventsConverter method processTestCase.

private static void processTestCase(GeneralTestEventsProcessor processor, BlazeTestEventsHandler eventsHandler, @Nullable Kind kind, TestSuite parent, TestCase test) {
    if (test.name == null || !wasRun(test) || isCancelled(test)) {
        return;
    }
    String displayName = eventsHandler.testDisplayName(kind, test.name);
    String locationUrl = eventsHandler.testLocationUrl(kind, parent.name, test.name, test.classname);
    processor.onTestStarted(new TestStartedEvent(displayName, locationUrl));
    if (test.sysOut != null) {
        processor.onTestOutput(new TestOutputEvent(displayName, test.sysOut, true));
    }
    if (test.sysErr != null) {
        processor.onTestOutput(new TestOutputEvent(displayName, test.sysErr, true));
    }
    if (isIgnored(test)) {
        ErrorOrFailureOrSkipped err = test.skipped != null ? test.skipped : NO_ERROR;
        processor.onTestIgnored(new TestIgnoredEvent(displayName, err.message, err.content));
    } else if (isFailed(test)) {
        List<ErrorOrFailureOrSkipped> errors = !test.failures.isEmpty() ? test.failures : !test.errors.isEmpty() ? test.errors : ImmutableList.of(NO_ERROR);
        for (ErrorOrFailureOrSkipped err : errors) {
            processor.onTestFailure(getTestFailedEvent(displayName, err.message, err.content, parseTimeMillis(test.time)));
        }
    }
    processor.onTestFinished(new TestFinishedEvent(displayName, parseTimeMillis(test.time)));
}
Also used : TestStartedEvent(com.intellij.execution.testframework.sm.runner.events.TestStartedEvent) TestIgnoredEvent(com.intellij.execution.testframework.sm.runner.events.TestIgnoredEvent) TestOutputEvent(com.intellij.execution.testframework.sm.runner.events.TestOutputEvent) TestFinishedEvent(com.intellij.execution.testframework.sm.runner.events.TestFinishedEvent) ArrayList(java.util.ArrayList) ImmutableList(com.google.common.collect.ImmutableList) List(java.util.List) ErrorOrFailureOrSkipped(com.google.idea.blaze.base.run.smrunner.BlazeXmlSchema.ErrorOrFailureOrSkipped)

Aggregations

TestFinishedEvent (com.intellij.execution.testframework.sm.runner.events.TestFinishedEvent)2 TestOutputEvent (com.intellij.execution.testframework.sm.runner.events.TestOutputEvent)2 TestStartedEvent (com.intellij.execution.testframework.sm.runner.events.TestStartedEvent)2 TestCaseSummary (com.facebook.buck.intellij.ideabuck.ws.buckevents.parts.TestCaseSummary)1 TestResultsSummary (com.facebook.buck.intellij.ideabuck.ws.buckevents.parts.TestResultsSummary)1 ImmutableList (com.google.common.collect.ImmutableList)1 ErrorOrFailureOrSkipped (com.google.idea.blaze.base.run.smrunner.BlazeXmlSchema.ErrorOrFailureOrSkipped)1 GeneralTestEventsProcessor (com.intellij.execution.testframework.sm.runner.GeneralTestEventsProcessor)1 TestFailedEvent (com.intellij.execution.testframework.sm.runner.events.TestFailedEvent)1 TestIgnoredEvent (com.intellij.execution.testframework.sm.runner.events.TestIgnoredEvent)1 TestSuiteFinishedEvent (com.intellij.execution.testframework.sm.runner.events.TestSuiteFinishedEvent)1 TestSuiteStartedEvent (com.intellij.execution.testframework.sm.runner.events.TestSuiteStartedEvent)1 ArrayList (java.util.ArrayList)1 List (java.util.List)1