SecuritytxtFormTest.php in Security.txt 8
File
tests/src/Functional/SecuritytxtFormTest.php
View source
<?php
namespace Drupal\Tests\securitytxt\Functional;
class SecuritytxtFormTest extends SecuritytxtBaseTest {
protected $defaultTheme = 'stark';
public function testValidConfigurationSubmission() {
$valid_configuration = $this
->submitValidConfiguration();
$this
->drupalLogin($this->administerPermissionUser);
$this
->drupalGet('admin/config/system/securitytxt');
$this
->assertSession()
->statusCodeEquals(200);
$this
->assertSession()
->checkboxChecked('edit-enabled');
$this
->assertSession()
->fieldValueEquals('contact_email', $valid_configuration['contact_email']);
$this
->assertSession()
->fieldValueEquals('contact_phone', $valid_configuration['contact_phone']);
$this
->assertSession()
->fieldValueEquals('contact_url', $valid_configuration['contact_url']);
$this
->assertSession()
->fieldValueEquals('encryption_key_url', $valid_configuration['encryption_key_url']);
$this
->assertSession()
->fieldValueEquals('policy_url', $valid_configuration['policy_url']);
$this
->assertSession()
->fieldValueEquals('acknowledgement_url', $valid_configuration['acknowledgement_url']);
$this
->drupalGet('admin/config/system/securitytxt/sign');
$this
->assertSession()
->statusCodeEquals(200);
$this
->assertSession()
->fieldValueEquals('signature_text', $valid_configuration['signature_text']);
$this
->drupalLogout();
$this
->drupalLogin($this->viewPermissionUser);
$this
->drupalGet('.well-known/security.txt');
$this
->assertSession()
->statusCodeEquals(200);
$this
->assertSession()
->responseContains('Contact: ' . $valid_configuration['contact_email']);
$this
->assertSession()
->responseContains('Contact: ' . $valid_configuration['contact_phone']);
$this
->assertSession()
->responseContains('Contact: ' . $valid_configuration['contact_url']);
$this
->assertSession()
->responseContains('Encryption: ' . $valid_configuration['encryption_key_url']);
$this
->assertSession()
->responseContains('Policy: ' . $valid_configuration['policy_url']);
$this
->assertSession()
->responseContains('Acknowledgement: ' . $valid_configuration['acknowledgement_url']);
$this
->drupalGet('.well-known/security.txt.sig');
$this
->assertSession()
->statusCodeEquals(200);
$this
->assertSession()
->responseContains($valid_configuration['signature_text']);
$this
->drupalLogout();
}
}