Forked from
project / project_browser
153 commits behind the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
ProjectBrowserUiTest.php 45.74 KiB
<?php
declare(strict_types=1);
namespace Drupal\Tests\project_browser\FunctionalJavascript;
use Behat\Mink\Element\NodeElement;
use Drupal\Core\Extension\MissingDependencyException;
use Drupal\Core\Recipe\Recipe;
use Drupal\FunctionalJavascriptTests\WebDriverTestBase;
use Drupal\project_browser\EnabledSourceHandler;
// cspell:ignore coverageall doomer eggman quiznos statusactive statusmaintained
// cspell:ignore vetica
/**
* Provides tests for the Project Browser UI.
*
* These tests rely on a module that replaces Project Browser data with
* test data.
*
* @see project_browser_test_install()
*
* @group project_browser
*/
class ProjectBrowserUiTest extends WebDriverTestBase {
use ProjectBrowserUiTestTrait;
// Could be moved into trait under PHP 8.3.
protected const SECURITY_OPTION_SELECTOR = 'select[name="securityCoverage"] ';
protected const MAINTENANCE_OPTION_SELECTOR = 'select[name="maintenanceStatus"] ';
protected const DEVELOPMENT_OPTION_SELECTOR = 'select[name="developmentStatus"] ';
protected const OPTION_CHECKED = 'option:checked';
protected const OPTION_FIRST_CHILD = 'option:first-child';
protected const OPTION_LAST_CHILD = 'option:last-child';
/**
* {@inheritdoc}
*/
protected static $modules = [
'project_browser',
'project_browser_test',
];
/**
* {@inheritdoc}
*/
protected $defaultTheme = 'stark';
/**
* {@inheritdoc}
*/
protected function setUp(): void {
parent::setUp();
$this->config('project_browser.admin_settings')->set('enabled_sources', ['project_browser_test_mock'])->save(TRUE);
$this->drupalLogin($this->drupalCreateUser([
'administer modules',
'administer site configuration',
]));
}
/**
* Tests the grid view.
*/
public function testGrid(): void {
$assert_session = $this->assertSession();
$page = $this->getSession()->getPage();
$this->getSession()->resizeWindow(1250, 1000);