aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMarc Alexander <admin@m-a-styles.de>2019-12-06 07:20:30 +0100
committerMarc Alexander <admin@m-a-styles.de>2019-12-06 07:20:30 +0100
commit1f00e160ab69b2a709793abc1829cc6e91e07b93 (patch)
tree8a6bf7dfa8752e1a628910afdc274fd6390fa3d3 /tests
parent41918b8afa031806b36dd20b6ee44a915033b8df (diff)
parentc7ed162a0627a0cfcf000631f236fbb7f6722ba3 (diff)
downloadforums-1f00e160ab69b2a709793abc1829cc6e91e07b93.tar
forums-1f00e160ab69b2a709793abc1829cc6e91e07b93.tar.gz
forums-1f00e160ab69b2a709793abc1829cc6e91e07b93.tar.bz2
forums-1f00e160ab69b2a709793abc1829cc6e91e07b93.tar.xz
forums-1f00e160ab69b2a709793abc1829cc6e91e07b93.zip
Merge pull request #5737 from marc1706/ticket/16211
[ticket/16211] Prevent skipping COPPA via URL parameter
Diffstat (limited to 'tests')
-rw-r--r--tests/functional/registration_test.php54
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/functional/registration_test.php b/tests/functional/registration_test.php
index 690f4ae9f2..48982edc8c 100644
--- a/tests/functional/registration_test.php
+++ b/tests/functional/registration_test.php
@@ -36,6 +36,10 @@ class phpbb_functional_registration_test extends phpbb_functional_test_case
{
$this->add_lang('ucp');
+ // Check that we can't skip
+ self::request('GET', 'ucp.php?mode=register&agreed=1');
+ $this->assertContainsLang('AGREE', $this->get_content());
+
$crawler = self::request('GET', 'ucp.php?mode=register');
$this->assertContainsLang('REGISTRATION', $crawler->filter('div.content h2')->text());
@@ -64,4 +68,54 @@ class phpbb_functional_registration_test extends phpbb_functional_test_case
$this->assert_checkbox_is_checked($crawler, 'notification.type.post_notification.method.email');
$this->assert_checkbox_is_checked($crawler, 'notification.type.topic_notification.method.email');
}
+
+ /**
+ * @depends test_disable_captcha_on_registration
+ */
+ public function test_register_coppa_account()
+ {
+ $this->login();
+ $this->admin_login();
+
+ $crawler = self::request('GET', "adm/index.php?i=acp_board&mode=registration&sid={$this->sid}");
+ $form = $crawler->selectButton('Submit')->form();
+ $form['config[coppa_enable]']->setValue('1');
+ $crawler = self::submit($form);
+
+ $this->assertContainsLang('CONFIG_UPDATED', $crawler->filter('#main .successbox')->text());
+ $this->logout();
+
+ $this->add_lang('ucp');
+
+ // Check that we can't skip
+ $crawler = self::request('GET', 'ucp.php?mode=register&coppa=1');
+ $this->assertContainsLang('COPPA_BIRTHDAY', $crawler->html());
+
+ $form = $crawler->selectButton('coppa_yes')->form();
+ $crawler = self::submit($form);
+
+ $this->assertContainsLang('REGISTRATION', $crawler->filter('div.content h2')->text());
+
+ $form = $crawler->selectButton('I agree to these terms')->form();
+ $crawler = self::submit($form);
+
+ $form = $crawler->selectButton('Submit')->form(array(
+ 'username' => 'user-coppa-test',
+ 'email' => 'user-coppa-test@phpbb.com',
+ 'new_password' => 'user-coppa-testuser-coppa-test',
+ 'password_confirm' => 'user-coppa-testuser-coppa-test',
+ ));
+ $form['tz']->select('Europe/Berlin');
+ $crawler = self::submit($form);
+
+ $this->assertContainsLang('ACCOUNT_COPPA', $crawler->filter('#message')->text());
+
+ $this->login();
+ $this->admin_login();
+
+ $crawler = self::request('GET', "adm/index.php?i=acp_board&mode=registration&sid={$this->sid}");
+ $form = $crawler->selectButton('Submit')->form();
+ $form['config[coppa_enable]']->setValue('0');
+ $crawler = self::submit($form);
+ }
}