diff --git a/platform/smRunner/testSrc/com/intellij/execution/testframework/sm/runner/ui/MockPrinter.java b/platform/smRunner/testSrc/com/intellij/execution/testframework/sm/runner/ui/MockPrinter.java index 3896d0c64e6d..021798455960 100644 --- a/platform/smRunner/testSrc/com/intellij/execution/testframework/sm/runner/ui/MockPrinter.java +++ b/platform/smRunner/testSrc/com/intellij/execution/testframework/sm/runner/ui/MockPrinter.java @@ -29,6 +29,18 @@ public class MockPrinter implements Printer { protected final StringBuilder myStdErr = new StringBuilder(); protected final StringBuilder myStdSys = new StringBuilder(); + /** + * Creates printer and prints printable on it. + * @param printable printable to print on this printer + * @return printer filled with printable output + */ + @NotNull + public static MockPrinter fillPrinter(@NotNull Printable printable) { + MockPrinter printer = new MockPrinter(); + printable.printOn(printer); + return printer; + } + public MockPrinter() { this(true); } diff --git a/python/testSrc/com/jetbrains/env/python/testing/PythonPyTestingTest.java b/python/testSrc/com/jetbrains/env/python/testing/PythonPyTestingTest.java index 6eaf2a872c02..8a0c0ef98697 100644 --- a/python/testSrc/com/jetbrains/env/python/testing/PythonPyTestingTest.java +++ b/python/testSrc/com/jetbrains/env/python/testing/PythonPyTestingTest.java @@ -1,5 +1,6 @@ package com.jetbrains.env.python.testing; +import com.intellij.execution.testframework.sm.runner.ui.MockPrinter; import com.jetbrains.env.PyEnvTestCase; import com.jetbrains.env.ut.PyTestTestTask; import org.hamcrest.Matchers; @@ -29,9 +30,12 @@ public class PythonPyTestingTest extends PyEnvTestCase { assertEquals(9, allTestsCount()); assertEquals(5, passedTestsCount()); assertEquals(4, failedTestsCount()); - Assert.assertThat("No test stdout", getMockPrinter(findTestByName("testOne")).getStdOut(), Matchers.startsWith("I am test1")); + Assert + .assertThat("No test stdout", MockPrinter.fillPrinter(findTestByName("testOne")).getStdOut(), Matchers.startsWith("I am test1")); + // Ensure test has stdout even it fails - Assert.assertThat("No stdout for fail", getMockPrinter(findTestByName("testFail")).getStdOut(), Matchers.startsWith("I will fail")); + Assert.assertThat("No stdout for fail", MockPrinter.fillPrinter(findTestByName("testFail")).getStdOut(), + Matchers.startsWith("I will fail")); } }); } diff --git a/python/testSrc/com/jetbrains/env/ut/PyUnitTestTask.java b/python/testSrc/com/jetbrains/env/ut/PyUnitTestTask.java index e300a1e69255..633885453ff9 100644 --- a/python/testSrc/com/jetbrains/env/ut/PyUnitTestTask.java +++ b/python/testSrc/com/jetbrains/env/ut/PyUnitTestTask.java @@ -274,19 +274,6 @@ public abstract class PyUnitTestTask extends PyExecutionFixtureTestTask { Assert.assertEquals(output(), 0, failedTestsCount()); } - /** - * Creates {@link MockPrinter} filled with test output. Use it to check what output test has. - * - * @param test test to fill mock printer with - * @return filled print. - */ - @NotNull - protected static MockPrinter getMockPrinter(@NotNull final Printable test) { - final MockPrinter printer = new MockPrinter(); - test.printOn(printer); - return printer; - } - /** * Searches for test by its name recursevly in {@link #myTestProxy} *