You are here

public function JUnitConverterTest::testXmlToRowsWithErrors in Drupal 9

Same name and namespace in other branches
  1. 8 core/tests/Drupal/Tests/Core/Test/JUnitConverterTest.php \Drupal\Tests\Core\Test\JUnitConverterTest::testXmlToRowsWithErrors()

Tests errors reported. @covers ::xmlToRows

File

core/tests/Drupal/Tests/Core/Test/JUnitConverterTest.php, line 28

Class

JUnitConverterTest
Tests Drupal\Core\Test\JUnitConverter.

Namespace

Drupal\Tests\Core\Test

Code

public function testXmlToRowsWithErrors() {
  $phpunit_error_xml = __DIR__ . '/fixtures/phpunit_error.xml';
  $res = JUnitConverter::xmlToRows(1, $phpunit_error_xml);
  $this
    ->assertCount(4, $res, 'All testcases got extracted');
  $this
    ->assertNotEquals('pass', $res[0]['status']);
  $this
    ->assertEquals('fail', $res[0]['status']);

  // Test nested testsuites, which appear when you use @dataProvider.
  for ($i = 0; $i < 3; $i++) {
    $this
      ->assertNotEquals('pass', $res[$i + 1]['status']);
    $this
      ->assertEquals('fail', $res[$i + 1]['status']);
  }

  // Make sure xmlToRows() does not balk if there are no test results.
  $this
    ->assertSame([], JUnitConverter::xmlToRows(1, 'does_not_exist'));
}