You are here

public function PhpUnitErrorTest::testPhpUnitXmlParsing in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/modules/simpletest/tests/src/Unit/PhpUnitErrorTest.php \Drupal\Tests\simpletest\Unit\PhpUnitErrorTest::testPhpUnitXmlParsing()

Test errors reported.

@covers ::simpletest_phpunit_xml_to_rows

File

core/modules/simpletest/tests/src/Unit/PhpUnitErrorTest.php, line 24
Contains \Drupal\Tests\simpletest\Unit\PhpUnitErrorTest.

Class

PhpUnitErrorTest
Tests PHPUnit errors are getting converted to Simpletest errors.

Namespace

Drupal\Tests\simpletest\Unit

Code

public function testPhpUnitXmlParsing() {
  require_once __DIR__ . '/../../../simpletest.module';
  $phpunit_error_xml = __DIR__ . '/../../fixtures/phpunit_error.xml';
  $res = simpletest_phpunit_xml_to_rows(1, $phpunit_error_xml);
  $this
    ->assertEquals(count($res), 4, 'All testcases got extracted');
  $this
    ->assertNotEquals($res[0]['status'], 'pass');
  $this
    ->assertEquals($res[0]['status'], 'fail');

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

  // Make sure simpletest_phpunit_xml_to_rows() does not balk if the test
  // didn't run.
  simpletest_phpunit_xml_to_rows(1, 'foobar');
}