mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-07 20:08:53 +00:00
[ticket/16524] Add test
PHPBB3-16524
This commit is contained in:
parent
acd824d432
commit
ab3d8ade72
1 changed files with 85 additions and 0 deletions
|
@ -46,4 +46,89 @@ class phpbb_functional_ucp_profile_test extends phpbb_functional_test_case
|
|||
$this->assertEquals('phpbb_twitter', $form->get('pf_phpbb_twitter')->getValue());
|
||||
$this->assertEquals('phpbb.youtube', $form->get('pf_phpbb_youtube')->getValue());
|
||||
}
|
||||
|
||||
public function test_submitting_emoji_allowed()
|
||||
{
|
||||
$this->add_lang('ucp');
|
||||
$this->login();
|
||||
|
||||
$crawler = self::request('GET', 'ucp.php?i=ucp_profile&mode=profile_info');
|
||||
$this->assertContainsLang('UCP_PROFILE_PROFILE_INFO', $crawler->filter('#cp-main h2')->text());
|
||||
|
||||
$form = $crawler->selectButton('Submit')->form([
|
||||
'pf_phpbb_location' => '😁', // grinning face with smiling eyes Emoji
|
||||
]);
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContainsLang('PROFILE_UPDATED', $crawler->filter('#message')->text());
|
||||
|
||||
$crawler = self::request('GET', 'ucp.php?i=ucp_profile&mode=profile_info');
|
||||
$form = $crawler->selectButton('Submit')->form();
|
||||
$this->assertEquals('😁', $form->get('pf_phpbb_location')->getValue());
|
||||
}
|
||||
|
||||
public function test_submitting_emoji_disallowed()
|
||||
{
|
||||
$this->add_lang(['ucp', 'acp/permissions']);
|
||||
$this->login();
|
||||
$this->admin_login();
|
||||
|
||||
// Group global permissions
|
||||
$crawler = self::request('GET', 'adm/index.php?i=acp_permissions&icat=16&mode=setting_group_global&sid=' . $this->sid);
|
||||
$this->assertContainsLang('ACP_GROUPS_PERMISSIONS_EXPLAIN', $this->get_content());
|
||||
|
||||
// Select Registered users group
|
||||
$form = $crawler->selectButton($this->lang('SUBMIT'))->form(['group_id' => [2]]);
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContainsLang('ACL_SET', $crawler->filter('h1')->eq(1)->text());
|
||||
|
||||
// Globals for \phpbb\auth\auth
|
||||
global $db, $cache;
|
||||
$db = $this->get_db();
|
||||
$cache = new phpbb_mock_null_cache;
|
||||
|
||||
$auth = new \phpbb\auth\auth;
|
||||
// Hardcoded user_id
|
||||
$user_data = $auth->obtain_user_data(2);
|
||||
$auth->acl($user_data);
|
||||
$this->assertEquals(1, $auth->acl_get('u_emoji'));
|
||||
|
||||
// Set u_emoji to never
|
||||
$form = $crawler->selectButton($this->lang('APPLY_PERMISSIONS'))->form(['setting[2][0][u_emoji]' => '0']);
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContainsLang('AUTH_UPDATED', $crawler->text());
|
||||
|
||||
// check acl again
|
||||
$auth = new \phpbb\auth\auth;
|
||||
$user_data = $auth->obtain_user_data(2);
|
||||
$auth->acl($user_data);
|
||||
$this->assertEquals(0, $auth->acl_get('u_emoji'));
|
||||
|
||||
$crawler = self::request('GET', 'ucp.php?i=ucp_profile&mode=profile_info');
|
||||
$this->assertContainsLang('UCP_PROFILE_PROFILE_INFO', $crawler->filter('#cp-main h2')->text());
|
||||
|
||||
$form = $crawler->selectButton('Submit')->form([
|
||||
'pf_phpbb_location' => '😁', // grinning face with smiling eyes Emoji
|
||||
]);
|
||||
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContains('The field “Location” has invalid characters.', $crawler->filter('p[class="error"]')->text());
|
||||
|
||||
// Set u_emoji back to Yes
|
||||
$crawler = self::request('GET', 'adm/index.php?i=acp_permissions&icat=16&mode=setting_group_global&sid=' . $this->sid);
|
||||
$this->assertContainsLang('ACP_GROUPS_PERMISSIONS_EXPLAIN', $this->get_content());
|
||||
// Select Registered users group
|
||||
$form = $crawler->selectButton($this->lang('SUBMIT'))->form(['group_id' => [2]]);
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContainsLang('ACL_SET', $crawler->filter('h1')->eq(1)->text());
|
||||
// Set u_emoji to never
|
||||
$form = $crawler->selectButton($this->lang('APPLY_PERMISSIONS'))->form(["setting[2][0][u_emoji]" => '1']);
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContainsLang('AUTH_UPDATED', $crawler->text());
|
||||
|
||||
// check acl again
|
||||
$auth = new \phpbb\auth\auth;
|
||||
$user_data = $auth->obtain_user_data(2);
|
||||
$auth->acl($user_data);
|
||||
$this->assertEquals(1, $auth->acl_get('u_emoji'));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue