Issue #2932044 by alexpott: Remove \PHPUnit_Util_XML::cssSelect() from \Drupal\tour\Tests\TourTestBase
parent
6ac6325024
commit
93b9f58426
|
@ -0,0 +1,83 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\tour\Tests;
|
||||
|
||||
/**
|
||||
* A legacy test for \Drupal\tour\Tests\TourTestBase.
|
||||
*
|
||||
* @group tour
|
||||
*/
|
||||
class TourTest extends TourTestBase {
|
||||
|
||||
/**
|
||||
* Modules to enable.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
public static $modules = ['block', 'tour', 'locale', 'language', 'tour_test'];
|
||||
|
||||
/**
|
||||
* Tour tip attributes to be tested. Keyed by the path.
|
||||
*
|
||||
* @var array
|
||||
* An array of tip attributes, keyed by path.
|
||||
*/
|
||||
protected $tips = [
|
||||
'tour-test-1' => [
|
||||
'data-id' => 'tour-test-1',
|
||||
'data-class' => 'tour-test-1',
|
||||
],
|
||||
];
|
||||
|
||||
/**
|
||||
* An admin user with administrative permissions for tour.
|
||||
*
|
||||
* @var \Drupal\user\UserInterface
|
||||
*/
|
||||
protected $adminUser;
|
||||
|
||||
/**
|
||||
* The permissions required for a logged in user to test tour tips.
|
||||
*
|
||||
* @var array
|
||||
* A list of permissions.
|
||||
*/
|
||||
protected $permissions = ['access tour'];
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
// Make sure we are using distinct default and administrative themes for
|
||||
// the duration of these tests.
|
||||
$this->container->get('theme_handler')->install(['bartik', 'seven']);
|
||||
$this->config('system.theme')
|
||||
->set('default', 'bartik')
|
||||
->set('admin', 'seven')
|
||||
->save();
|
||||
|
||||
$this->permissions[] = 'view the administration theme';
|
||||
|
||||
// Create an admin user to view tour tips.
|
||||
$this->adminUser = $this->drupalCreateUser($this->permissions);
|
||||
$this->drupalLogin($this->adminUser);
|
||||
|
||||
$this->drupalPlaceBlock('local_actions_block', [
|
||||
'theme' => 'seven',
|
||||
'region' => 'content'
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* A simple tip test.
|
||||
*/
|
||||
public function testTips() {
|
||||
foreach ($this->tips as $path => $attributes) {
|
||||
$this->drupalGet($path);
|
||||
$this->assertTourTips($attributes);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -55,11 +55,11 @@ abstract class TourTestBase extends WebTestBase {
|
|||
$modals = 0;
|
||||
foreach ($tips as $tip) {
|
||||
if (!empty($tip['data-id'])) {
|
||||
$elements = \PHPUnit_Util_XML::cssSelect('#' . $tip['data-id'], TRUE, $this->content, TRUE);
|
||||
$elements = $this->xpath('//*[@id="' . $tip['data-id'] . '"]');
|
||||
$this->assertTrue(!empty($elements) && count($elements) === 1, format_string('Found corresponding page element for tour tip with id #%data-id', ['%data-id' => $tip['data-id']]));
|
||||
}
|
||||
elseif (!empty($tip['data-class'])) {
|
||||
$elements = \PHPUnit_Util_XML::cssSelect('.' . $tip['data-class'], TRUE, $this->content, TRUE);
|
||||
$elements = $this->xpath('//*[contain(@class, "' . $tip['data-id'] . '")]');
|
||||
$this->assertFalse(empty($elements), format_string('Found corresponding page element for tour tip with class .%data-class', ['%data-class' => $tip['data-class']]));
|
||||
}
|
||||
else {
|
||||
|
|
Loading…
Reference in New Issue