Chris@0
|
1 <?php
|
Chris@0
|
2
|
Chris@0
|
3 namespace Drupal\simpletest\Tests;
|
Chris@0
|
4
|
Chris@0
|
5 use Drupal\simpletest\WebTestBase;
|
Chris@0
|
6 use Drupal\Tests\simpletest\Functional\SimpletestPhpunitBrowserTest;
|
Chris@0
|
7
|
Chris@0
|
8 /**
|
Chris@0
|
9 * Test PHPUnit output for the Simpletest UI.
|
Chris@0
|
10 *
|
Chris@0
|
11 * @group simpletest
|
Chris@0
|
12 *
|
Chris@0
|
13 * @see \Drupal\Tests\Listeners\SimpletestUiPrinter
|
Chris@0
|
14 */
|
Chris@0
|
15 class UiPhpUnitOutputTest extends WebTestBase {
|
Chris@0
|
16
|
Chris@0
|
17 /**
|
Chris@0
|
18 * Modules to enable.
|
Chris@0
|
19 *
|
Chris@0
|
20 * @var string[]
|
Chris@0
|
21 */
|
Chris@0
|
22 public static $modules = ['simpletest'];
|
Chris@0
|
23
|
Chris@0
|
24 /**
|
Chris@0
|
25 * Tests that PHPUnit output in the Simpletest UI looks good.
|
Chris@0
|
26 */
|
Chris@0
|
27 public function testOutput() {
|
Chris@0
|
28 require_once __DIR__ . '/../../tests/fixtures/simpletest_phpunit_browsertest.php';
|
Chris@0
|
29 $phpunit_junit_file = $this->container->get('file_system')->realpath('public://phpunit_junit.xml');
|
Chris@0
|
30 // Prepare the default browser test output directory in the child site.
|
Chris@0
|
31 $this->container->get('file_system')->mkdir('public://simpletest');
|
Chris@0
|
32 $status = 0;
|
Chris@0
|
33 $output = [];
|
Chris@0
|
34 simpletest_phpunit_run_command([SimpletestPhpunitBrowserTest::class], $phpunit_junit_file, $status, $output);
|
Chris@0
|
35
|
Chris@0
|
36 // Check that there are <br> tags for the HTML output by
|
Chris@0
|
37 // SimpletestUiPrinter.
|
Chris@0
|
38 $this->assertEqual($output[19], 'HTML output was generated<br />');
|
Chris@0
|
39 // Check that URLs are printed as HTML links.
|
Chris@0
|
40 $this->assertIdentical(strpos($output[20], '<a href="http'), 0);
|
Chris@0
|
41 }
|
Chris@0
|
42
|
Chris@0
|
43 }
|