[ticket/17326] Extend acp bbcodes test for font icon

PHPBB-17326
This commit is contained in:
Marc Alexander 2025-02-15 11:09:22 +01:00
parent 29c19bb764
commit 68c4e22886
No known key found for this signature in database
GPG key ID: 50E0D2423696F995

View file

@ -25,7 +25,8 @@ class phpbb_functional_acp_bbcodes_test extends phpbb_functional_test_case
$crawler = self::request('GET', 'adm/index.php?i=acp_bbcodes&sid=' . $this->sid . '&mode=bbcodes&action=add'); $crawler = self::request('GET', 'adm/index.php?i=acp_bbcodes&sid=' . $this->sid . '&mode=bbcodes&action=add');
$form = $crawler->selectButton('Submit')->form(array( $form = $crawler->selectButton('Submit')->form(array(
'bbcode_match' => '[mod="{TEXT1}"]{TEXT2}[/mod]', 'bbcode_match' => '[mod="{TEXT1}"]{TEXT2}[/mod]',
'bbcode_tpl' => '<div>{TEXT1}</div><div>{TEXT2}</div>' 'bbcode_tpl' => '<div>{TEXT1}</div><div>{TEXT2}</div>',
'bbcode_font_icon' => 'user',
)); ));
self::submit($form); self::submit($form);
@ -47,7 +48,7 @@ class phpbb_functional_acp_bbcodes_test extends phpbb_functional_test_case
/** /**
* @dataProvider get_bbcode_error_tests * @dataProvider get_bbcode_error_tests
*/ */
public function test_bbcode_error($match, $tpl, $error) public function test_bbcode_error($match, $tpl, $icon, $error)
{ {
$this->login(); $this->login();
$this->admin_login(); $this->admin_login();
@ -55,7 +56,8 @@ class phpbb_functional_acp_bbcodes_test extends phpbb_functional_test_case
$crawler = self::request('GET', 'adm/index.php?i=acp_bbcodes&sid=' . $this->sid . '&mode=bbcodes&action=add'); $crawler = self::request('GET', 'adm/index.php?i=acp_bbcodes&sid=' . $this->sid . '&mode=bbcodes&action=add');
$form = $crawler->selectButton('Submit')->form([ $form = $crawler->selectButton('Submit')->form([
'bbcode_match' => $match, 'bbcode_match' => $match,
'bbcode_tpl' => $tpl 'bbcode_tpl' => $tpl,
'bbcode_font_icon' => $icon,
]); ]);
$crawler = self::submit($form); $crawler = self::submit($form);
@ -69,18 +71,33 @@ class phpbb_functional_acp_bbcodes_test extends phpbb_functional_test_case
[ [
'XXX', 'XXX',
'', '',
'',
'BBCode is constructed in an invalid form' 'BBCode is constructed in an invalid form'
], ],
[ [
'[x]{TEXT}[/x]', '[x]{TEXT}[/x]',
'<xsl:invalid', '<xsl:invalid',
'',
'template is invalid' 'template is invalid'
], ],
[ [
'[x]{TEXT}[/x]', '[x]{TEXT}[/x]',
'<script>{TEXT}</script>', '<script>{TEXT}</script>',
'',
'unsafe' 'unsafe'
], ],
'icon name too long' => [
'[mod2="{TEXT1}"]{TEXT2}[/mod2]',
'<div>{TEXT1}</div><div>{TEXT2}</div>',
str_repeat('a', 65),
'is too long',
],
'icon name invalid' => [
'[mod2="{TEXT1}"]{TEXT2}[/mod2]',
'<div>{TEXT1}</div><div>{TEXT2}</div>',
'Not a valid icon name',
'is invalid',
],
]; ];
} }
} }