public function ReCaptchaBasicTest::testReCaptchaAdminSettingsForm in reCAPTCHA 8.3
Same name and namespace in other branches
- 8.2 tests/src/Functional/ReCaptchaBasicTest.php \Drupal\Tests\recaptcha\Functional\ReCaptchaBasicTest::testReCaptchaAdminSettingsForm()
Test the reCAPTCHA settings form.
File
- tests/
src/ Functional/ ReCaptchaBasicTest.php, line 84
Class
- ReCaptchaBasicTest
- Test basic functionality of reCAPTCHA module.
Namespace
Drupal\Tests\recaptcha\FunctionalCode
public function testReCaptchaAdminSettingsForm() {
$this
->drupalLogin($this->adminUser);
$site_key = $this
->randomMachineName(40);
$secret_key = $this
->randomMachineName(40);
// Check form validation.
$edit['recaptcha_site_key'] = '';
$edit['recaptcha_secret_key'] = '';
$this
->drupalPostForm('admin/config/people/captcha/recaptcha', $edit, $this
->t('Save configuration'));
$this
->assertSession()
->responseContains($this
->t('Site key field is required.'), '[testReCaptchaConfiguration]: Empty site key detected.');
$this
->assertSession()
->responseContains($this
->t('Secret key field is required.'), '[testReCaptchaConfiguration]: Empty secret key detected.');
// Save form with valid values.
$edit['recaptcha_site_key'] = $site_key;
$edit['recaptcha_secret_key'] = $secret_key;
$edit['recaptcha_tabindex'] = 0;
$this
->drupalPostForm('admin/config/people/captcha/recaptcha', $edit, $this
->t('Save configuration'));
$this
->assertSession()
->responseContains($this
->t('The configuration options have been saved.'), '[testReCaptchaConfiguration]: The configuration options have been saved.');
$this
->assertSession()
->responseNotContains($this
->t('Site key field is required.'), '[testReCaptchaConfiguration]: Site key was not empty.');
$this
->assertSession()
->responseNotContains($this
->t('Secret key field is required.'), '[testReCaptchaConfiguration]: Secret key was not empty.');
$this
->assertSession()
->responseNotContains($this
->t('The tabindex must be an integer.'), '[testReCaptchaConfiguration]: Tab index had a valid input.');
$this
->drupalLogout();
}