PageLoadProgressAdminSettingsFormTest.php in Page Load Progress 8
File
tests/src/Functional/PageLoadProgressAdminSettingsFormTest.php
View source
<?php
namespace Drupal\Tests\page_load_progress\Functional;
use Drupal\Tests\BrowserTestBase;
use Drupal\Core\Url;
class PageLoadProgressAdminSettingsFormTest extends BrowserTestBase {
protected $privilegedUser;
public static $modules = [
'page_load_progress',
];
protected $profile = 'minimal';
public static function getInfo() {
return [
'name' => 'Page Load Progress settings form',
'description' => 'Tests the Page Load Progress admin settings form.',
'group' => 'Page Load Progress',
];
}
protected function setUp() {
parent::setUp();
$this->privilegedUser = $this
->drupalCreateUser([
'administer page load progress',
]);
$this
->drupalLogin($this->privilegedUser);
}
public function testPageLoadProgressSettings() {
$this
->drupalGet(Url::fromRoute('page_load_progress.admin_settings'));
$this
->assertSession()
->statusCodeEquals(200);
$this
->assertSession()
->pageTextContains('Page Load Progress | Drupal');
$this
->assertSession()
->fieldExists('edit-page-load-progress-time');
$this
->assertSession()
->fieldExists('edit-page-load-progress-request-path');
$this
->assertSession()
->fieldExists('page_load_progress_request_path_negate_condition');
$this
->assertSession()
->fieldExists('edit-page-load-progress-internal-links');
$this
->assertSession()
->fieldExists('edit-page-load-progress-esc-key');
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-time', 10);
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-request-path', '');
$this
->assertSession()
->fieldValueEquals('page_load_progress_request_path_negate_condition', 1);
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-internal-links', FALSE);
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-esc-key', TRUE);
$this
->assertSession()
->elementExists('css', '.page-load-progress-submit');
$this
->drupalLogout();
$this
->drupalGet(Url::fromRoute('page_load_progress.admin_settings'));
$this
->assertSession()
->statusCodeEquals(403);
}
public function testPageLoadProgressSettingsPost() {
$edit = [
'page_load_progress_time' => 5000,
'page_load_progress_request_path' => '<front>',
'page_load_progress_request_path_negate_condition' => 0,
'page_load_progress_internal_links' => TRUE,
'page_load_progress_esc_key' => FALSE,
];
$this
->drupalPostForm(Url::fromRoute('page_load_progress.admin_settings'), $edit, 'Save configuration');
$this
->drupalGet(Url::fromRoute('page_load_progress.admin_settings'));
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-time', $edit['page_load_progress_time']);
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-request-path', $edit['page_load_progress_request_path']);
$this
->assertSession()
->fieldValueEquals('page_load_progress_request_path_negate_condition', $edit['page_load_progress_request_path_negate_condition']);
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-internal-links', $edit['page_load_progress_internal_links']);
$this
->assertSession()
->fieldValueEquals('edit-page-load-progress-esc-key', $edit['page_load_progress_esc_key']);
}
}