mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
Merge remote-tracking branch 'remotes/Marc/ticket/11548-develop' into develop
# By Marc Alexander # Via Marc Alexander * remotes/Marc/ticket/11548-develop: [ticket/11548] Fix test errors in groups test on develop [ticket/11548] Check upload avatar URL the same way as in phpBB 3.0
This commit is contained in:
commit
8a93a35def
2 changed files with 34 additions and 7 deletions
|
@ -77,6 +77,32 @@ class phpbb_avatar_driver_upload extends phpbb_avatar_driver
|
||||||
}
|
}
|
||||||
elseif (!empty($this->config['allow_avatar_remote_upload']) && !empty($url))
|
elseif (!empty($this->config['allow_avatar_remote_upload']) && !empty($url))
|
||||||
{
|
{
|
||||||
|
if (!preg_match('#^(http|https|ftp)://#i', $url))
|
||||||
|
{
|
||||||
|
$url = 'http://' . $url;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!function_exists('validate_data'))
|
||||||
|
{
|
||||||
|
require($this->phpbb_root_path . 'includes/functions_user.' . $this->php_ext);
|
||||||
|
}
|
||||||
|
|
||||||
|
$validate_array = validate_data(
|
||||||
|
array(
|
||||||
|
'url' => $url,
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'url' => array('string', true, 5, 255),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$error = array_merge($error, $validate_array);
|
||||||
|
|
||||||
|
if (!empty($error))
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
$file = $upload->remote_upload($url);
|
$file = $upload->remote_upload($url);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -84,19 +84,19 @@ abstract class phpbb_functional_common_groups_test extends phpbb_functional_test
|
||||||
public function group_avatar_min_max_data()
|
public function group_avatar_min_max_data()
|
||||||
{
|
{
|
||||||
return array(
|
return array(
|
||||||
array('uploadurl', 'foo', 'TOO_SHORT'),
|
array('avatar_driver_upload', 'avatar_upload_url', 'foo', 'AVATAR_URL_INVALID'),
|
||||||
array('uploadurl', 'foobar', 'AVATAR_URL_INVALID'),
|
array('avatar_driver_upload', 'avatar_upload_url', 'foobar', 'AVATAR_URL_INVALID'),
|
||||||
array('uploadurl', str_repeat('f', 256), 'TOO_LONG'),
|
array('avatar_driver_upload', 'avatar_upload_url', 'http://www.phpbb.com/' . str_repeat('f', 240) . '.png', 'TOO_LONG'),
|
||||||
array('remotelink', 'foo', 'TOO_SHORT'),
|
array('avatar_driver_remote', 'avatar_remote_url', 'foo', 'AVATAR_URL_INVALID'),
|
||||||
array('remotelink', 'foobar', 'AVATAR_URL_INVALID'),
|
array('avatar_driver_remote', 'avatar_remote_url', 'foobar', 'AVATAR_URL_INVALID'),
|
||||||
array('remotelink', str_repeat('f', 256), 'TOO_LONG'),
|
array('avatar_driver_remote', 'avatar_remote_url', 'http://www.phpbb.com/' . str_repeat('f', 240) . '.png', 'TOO_LONG'),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @dataProvider group_avatar_min_max_data
|
* @dataProvider group_avatar_min_max_data
|
||||||
*/
|
*/
|
||||||
public function test_group_avatar_min_max($form_name, $input, $expected)
|
public function test_group_avatar_min_max($avatar_type, $form_name, $input, $expected)
|
||||||
{
|
{
|
||||||
$this->login();
|
$this->login();
|
||||||
$this->admin_login();
|
$this->admin_login();
|
||||||
|
@ -105,6 +105,7 @@ abstract class phpbb_functional_common_groups_test extends phpbb_functional_test
|
||||||
|
|
||||||
$crawler = self::request('GET', $this->get_url() . '&g=5&sid=' . $this->sid);
|
$crawler = self::request('GET', $this->get_url() . '&g=5&sid=' . $this->sid);
|
||||||
$form = $crawler->selectButton($this->lang('SUBMIT'))->form();
|
$form = $crawler->selectButton($this->lang('SUBMIT'))->form();
|
||||||
|
$form['avatar_driver']->setValue($avatar_type);
|
||||||
$form[$form_name]->setValue($input);
|
$form[$form_name]->setValue($input);
|
||||||
$crawler = self::submit($form);
|
$crawler = self::submit($form);
|
||||||
$this->assertContains($this->lang($expected), $crawler->text());
|
$this->assertContains($this->lang($expected), $crawler->text());
|
||||||
|
|
Loading…
Add table
Reference in a new issue