Search in sources :

Example 6 with TestSuiteModel

use of com.google.testing.junit.runner.model.TestSuiteModel in project bazel by bazelbuild.

the class JUnit4TestXmlListenerTest method ignoredTestAreReportedAsSuppressedTests.

@Test
public void ignoredTestAreReportedAsSuppressedTests() throws Exception {
    TestSuiteModelSupplier mockModelSupplier = mock(TestSuiteModelSupplier.class);
    TestSuiteModel mockModel = mock(TestSuiteModel.class);
    CancellableRequestFactory mockRequestFactory = mock(CancellableRequestFactory.class);
    OutputStream mockXmlStream = mock(OutputStream.class);
    JUnit4TestXmlListener listener = new JUnit4TestXmlListener(mockModelSupplier, mockRequestFactory, fakeSignalHandlers, mockXmlStream, errPrintStream);
    Request request = Request.classWithoutSuiteMethod(TestWithIgnoredTestCase.class);
    Description suiteDescription = request.getRunner().getDescription();
    Description testDescription = suiteDescription.getChildren().get(0);
    when(mockModelSupplier.get()).thenReturn(mockModel);
    JUnitCore core = new JUnitCore();
    core.addListener(listener);
    core.run(request);
    assertEquals("no output to stderr expected", 0, errStream.size());
    InOrder inOrder = inOrder(mockModel);
    inOrder.verify(mockModel).testSuppressed(testDescription);
    inOrder.verify(mockModel).writeAsXml(mockXmlStream);
    verify(mockRequestFactory, never()).cancelRun();
}
Also used : Description(org.junit.runner.Description) InOrder(org.mockito.InOrder) JUnitCore(org.junit.runner.JUnitCore) TestSuiteModel(com.google.testing.junit.runner.model.TestSuiteModel) ByteArrayOutputStream(java.io.ByteArrayOutputStream) OutputStream(java.io.OutputStream) Request(org.junit.runner.Request) Test(org.junit.Test)

Example 7 with TestSuiteModel

use of com.google.testing.junit.runner.model.TestSuiteModel in project bazel by bazelbuild.

the class JUnit4TestXmlListenerTest method writesXmlAtTestEnd.

@Test
public void writesXmlAtTestEnd() throws Exception {
    TestSuiteModelSupplier mockModelSupplier = mock(TestSuiteModelSupplier.class);
    TestSuiteModel mockModel = mock(TestSuiteModel.class);
    CancellableRequestFactory mockRequestFactory = mock(CancellableRequestFactory.class);
    OutputStream mockXmlStream = mock(OutputStream.class);
    JUnit4TestXmlListener listener = new JUnit4TestXmlListener(mockModelSupplier, mockRequestFactory, fakeSignalHandlers, mockXmlStream, errPrintStream);
    when(mockModelSupplier.get()).thenReturn(mockModel);
    JUnitCore core = new JUnitCore();
    core.addListener(listener);
    core.run(Request.classWithoutSuiteMethod(PassingTest.class));
    assertEquals("no output to stderr expected", 0, errStream.size());
    verify(mockModel).writeAsXml(mockXmlStream);
    verify(mockRequestFactory, never()).cancelRun();
}
Also used : JUnitCore(org.junit.runner.JUnitCore) TestSuiteModel(com.google.testing.junit.runner.model.TestSuiteModel) ByteArrayOutputStream(java.io.ByteArrayOutputStream) OutputStream(java.io.OutputStream) Test(org.junit.Test)

Example 8 with TestSuiteModel

use of com.google.testing.junit.runner.model.TestSuiteModel in project bazel by bazelbuild.

the class JUnit4TestModelBuilderTest method testCreateModel_simpleSuite.

@Test
public void testCreateModel_simpleSuite() throws Exception {
    Class<?> suiteClass = SampleSuite.class;
    Request request = Request.classWithoutSuiteMethod(suiteClass);
    String suiteClassName = suiteClass.getCanonicalName();
    JUnit4TestModelBuilder modelBuilder = builder(request, suiteClassName, stubShardingEnvironment, null, xmlResultWriter);
    Description topSuite = request.getRunner().getDescription();
    Description innerSuite = topSuite.getChildren().get(0);
    Description testOne = innerSuite.getChildren().get(0);
    TestSuiteModel model = modelBuilder.get();
    TestNode topSuiteNode = Iterables.getOnlyElement(model.getTopLevelTestSuites());
    assertEquals(topSuite, topSuiteNode.getDescription());
    TestNode innerSuiteNode = Iterables.getOnlyElement(topSuiteNode.getChildren());
    assertEquals(innerSuite, innerSuiteNode.getDescription());
    TestNode testOneNode = Iterables.getOnlyElement(innerSuiteNode.getChildren());
    assertEquals(testOne, testOneNode.getDescription());
    assertTrue(testOneNode.getChildren().isEmpty());
    assertEquals(1, model.getNumTestCases());
}
Also used : Description(org.junit.runner.Description) TestSuiteModel(com.google.testing.junit.runner.model.TestSuiteModel) Request(org.junit.runner.Request) TestNode(com.google.testing.junit.runner.model.TestNode) Test(org.junit.Test)

Example 9 with TestSuiteModel

use of com.google.testing.junit.runner.model.TestSuiteModel in project bazel by bazelbuild.

the class JUnit4TestModelBuilderTest method testCreateModel_singleTestClass.

@Test
public void testCreateModel_singleTestClass() throws Exception {
    Class<?> testClass = SampleTestCaseWithTwoTests.class;
    Request request = Request.classWithoutSuiteMethod(testClass);
    String testClassName = testClass.getCanonicalName();
    JUnit4TestModelBuilder modelBuilder = builder(request, testClassName, stubShardingEnvironment, null, xmlResultWriter);
    Description suite = request.getRunner().getDescription();
    Description testOne = suite.getChildren().get(0);
    Description testTwo = suite.getChildren().get(1);
    TestSuiteModel model = modelBuilder.get();
    TestNode suiteNode = Iterables.getOnlyElement(model.getTopLevelTestSuites());
    assertEquals(suite, suiteNode.getDescription());
    List<TestNode> testCases = suiteNode.getChildren();
    assertEquals(2, testCases.size());
    TestNode testOneNode = testCases.get(0);
    TestNode testTwoNode = testCases.get(1);
    assertEquals(testOne, testOneNode.getDescription());
    assertEquals(testTwo, testTwoNode.getDescription());
    assertTrue(testOneNode.getChildren().isEmpty());
    assertTrue(testTwoNode.getChildren().isEmpty());
    assertEquals(2, model.getNumTestCases());
}
Also used : Description(org.junit.runner.Description) TestSuiteModel(com.google.testing.junit.runner.model.TestSuiteModel) Request(org.junit.runner.Request) TestNode(com.google.testing.junit.runner.model.TestNode) Test(org.junit.Test)

Aggregations

TestSuiteModel (com.google.testing.junit.runner.model.TestSuiteModel)9 Test (org.junit.Test)8 Request (org.junit.runner.Request)8 Description (org.junit.runner.Description)7 ByteArrayOutputStream (java.io.ByteArrayOutputStream)6 OutputStream (java.io.OutputStream)6 JUnitCore (org.junit.runner.JUnitCore)6 InOrder (org.mockito.InOrder)5 TestNode (com.google.testing.junit.runner.model.TestNode)2 RegExTestCaseFilter (com.google.testing.junit.junit4.runner.RegExTestCaseFilter)1 SuiteTrimmingFilter (com.google.testing.junit.junit4.runner.SuiteTrimmingFilter)1 File (java.io.File)1 Filter (org.junit.runner.manipulation.Filter)1 RunListener (org.junit.runner.notification.RunListener)1 Signal (sun.misc.Signal)1