[ticket/17100] Update tests for changed build_cfg_template

PHPBB3-17100
This commit is contained in:
Marc Alexander 2022-04-18 14:27:38 +02:00
parent 99368ab19a
commit 516d5313ad
No known key found for this signature in database
GPG key ID: 50E0D2423696F995
2 changed files with 190 additions and 18 deletions

View file

@ -380,7 +380,7 @@ function phpbb_build_cfg_template(array $tpl_type, string $key, &$new_ary, $conf
'type' => 'radio',
'name' => $name,
'value' => 1,
'checked' => $new_ary[$config_key],
'checked' => (bool) $new_ary[$config_key],
'label' => $type_no ? $language->lang('YES') : $language->lang('ENABLED'),
];

View file

@ -24,7 +24,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '1'),
'config_key_name',
array(),
'<input id="key_name" type="text" size="20" maxlength="255" name="config[config_key_name]" value="1" />',
[
'tag' => 'input',
'id' => 'key_name',
'type' => 'text',
'name' => 'config[config_key_name]',
'size' => 20,
'maxlength' => 255,
'value' => '1',
],
),
array(
array('password', 20, 128),
@ -32,7 +40,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '2'),
'config_key_name',
array(),
'<input id="key_name" type="password" size="20" maxlength="128" name="config[config_key_name]" value="********" autocomplete="off" />',
[
'tag' => 'input',
'id' => 'key_name',
'type' => 'password',
'name' => 'config[config_key_name]',
'size' => 20,
'maxlength' => 128,
'value' => '********',
],
),
array(
array('text', 0, 255),
@ -40,7 +56,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '3'),
'config_key_name',
array(),
'<input id="key_name" type="text" maxlength="255" name="config[config_key_name]" value="3" />',
[
'tag' => 'input',
'id' => 'key_name',
'type' => 'text',
'name' => 'config[config_key_name]',
'maxlength' => 255,
'value' => '3',
'size' => '',
],
),
);
}
@ -68,7 +92,24 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name_width' => 10, 'config_key_name_height' => 20),
'config_key_name',
array(),
'<input id="number_key_name" type="number" min="5" max="15" name="config[config_key_name_width]" value="10" /> x <input type="number" min="5" max="15" name="config[config_key_name_height]" value="20" />',
[
'tag' => 'dimension',
'width' => [
'id' => 'number_key_name',
'type' => 'number',
'name' => 'config[config_key_name_width]',
'min' => 5,
'max' => 15,
'value' => 10,
],
'height' => [
'type' => 'number',
'name' => 'config[config_key_name_height]',
'min' => 5,
'max' => 15,
'value' => 20,
],
],
),
array(
array('dimension', 0, 15),
@ -76,7 +117,24 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name_width' => 10, 'config_key_name_height' => 20),
'config_key_name',
array(),
'<input id="number_key_name" type="number" min="0" max="15" name="config[config_key_name_width]" value="10" /> x <input type="number" min="0" max="15" name="config[config_key_name_height]" value="20" />',
[
'tag' => 'dimension',
'width' => [
'id' => 'number_key_name',
'type' => 'number',
'name' => 'config[config_key_name_width]',
'min' => 0,
'max' => 15,
'value' => 10,
],
'height' => [
'type' => 'number',
'name' => 'config[config_key_name_height]',
'min' => 0,
'max' => 15,
'value' => 20,
],
],
),
);
}
@ -104,7 +162,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => 10),
'config_key_name',
array(),
'<input id="number_key_name" type="number" min="5" max="15" name="config[config_key_name]" value="10" />',
[
'tag' => 'input',
'id' => 'number_key_name',
'type' => 'number',
'name' => 'config[config_key_name]',
'min' => 5,
'max' => 15,
'value' => 10,
],
),
array(
array('number', -1, 9999),
@ -112,7 +178,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => 10),
'config_key_name',
array(),
'<input id="number_key_name" type="number" min="-1" max="9999" name="config[config_key_name]" value="10" />',
[
'tag' => 'input',
'id' => 'number_key_name',
'type' => 'number',
'name' => 'config[config_key_name]',
'min' => -1,
'max' => 9999,
'value' => 10,
],
),
array(
array('number', 0, 9999),
@ -120,7 +194,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => 10),
'config_key_name',
array(),
'<input id="number_key_name" type="number" min="0" max="9999" name="config[config_key_name]" value="10" />',
[
'tag' => 'input',
'id' => 'number_key_name',
'type' => 'number',
'name' => 'config[config_key_name]',
'min' => 0,
'max' => 9999,
'value' => 10,
],
),
);
}
@ -148,7 +230,14 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => 'phpBB'),
'config_key_name',
array(),
'<textarea id="key_name" name="config[config_key_name]" rows="5" cols="30">phpBB</textarea>',
[
'tag' => 'textarea',
'id' => 'key_name',
'name' => 'config[config_key_name]',
'rows' => 5,
'cols' => 30,
'content' => 'phpBB',
]
),
);
}
@ -176,7 +265,26 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '0'),
'config_key_name',
array(),
'<label><input type="radio" id="key_name" name="config[config_key_name]" value="1" class="radio" /> ENABLED</label><label><input type="radio" name="config[config_key_name]" value="0" checked="checked" class="radio" /> DISABLED</label>',
[
'tag' => 'radio',
'buttons' => [
[
'id' => 'key_name',
'type' => 'radio',
'value' => 1,
'name' => 'config[config_key_name]',
'label' => 'ENABLED',
'checked' => false,
],
[
'type' => 'radio',
'value' => 0,
'checked' => true,
'name' => 'config[config_key_name]',
'label' => 'DISABLED',
],
],
],
),
array(
array('radio', 'enabled_disabled'),
@ -184,7 +292,26 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '1'),
'config_key_name',
array(),
'<label><input type="radio" id="key_name" name="config[config_key_name]" value="1" checked="checked" class="radio" /> ENABLED</label><label><input type="radio" name="config[config_key_name]" value="0" class="radio" /> DISABLED</label>',
[
'tag' => 'radio',
'buttons' => [
[
'id' => 'key_name',
'type' => 'radio',
'value' => 1,
'name' => 'config[config_key_name]',
'label' => 'ENABLED',
'checked' => true,
],
[
'type' => 'radio',
'value' => 0,
'checked' => false,
'name' => 'config[config_key_name]',
'label' => 'DISABLED',
],
],
],
),
array(
array('radio', 'yes_no'),
@ -192,7 +319,26 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '0'),
'config_key_name',
array(),
'<label><input type="radio" id="key_name" name="config[config_key_name]" value="1" class="radio" /> YES</label><label><input type="radio" name="config[config_key_name]" value="0" checked="checked" class="radio" /> NO</label>',
[
'tag' => 'radio',
'buttons' => [
[
'id' => 'key_name',
'type' => 'radio',
'value' => 1,
'name' => 'config[config_key_name]',
'label' => 'YES',
'checked' => false,
],
[
'type' => 'radio',
'value' => 0,
'checked' => true,
'name' => 'config[config_key_name]',
'label' => 'NO',
],
],
],
),
array(
array('radio', 'yes_no'),
@ -200,7 +346,26 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => '1'),
'config_key_name',
array(),
'<label><input type="radio" id="key_name" name="config[config_key_name]" value="1" checked="checked" class="radio" /> YES</label><label><input type="radio" name="config[config_key_name]" value="0" class="radio" /> NO</label>',
[
'tag' => 'radio',
'buttons' => [
[
'id' => 'key_name',
'type' => 'radio',
'value' => 1,
'name' => 'config[config_key_name]',
'label' => 'YES',
'checked' => true,
],
[
'type' => 'radio',
'value' => 0,
'checked' => false,
'name' => 'config[config_key_name]',
'label' => 'NO',
],
],
],
),
);
}
@ -210,11 +375,10 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
*/
public function test_build_cfg_template_radio($tpl_type, $key, $new, $config_key, $vars, $expected)
{
global $user, $phpbb_dispatcher;
global $language, $phpbb_dispatcher;
$phpbb_dispatcher = new phpbb_mock_event_dispatcher();
$user = new phpbb_mock_user();
$user->lang = new phpbb_mock_lang();
$language = new \phpbb_mock_lang();
$this->assertEquals($expected, build_cfg_template($tpl_type, $key, $new, $config_key, $vars));
}
@ -228,7 +392,15 @@ class phpbb_functions_acp_build_cfg_template_test extends phpbb_test_case
array('config_key_name' => 'phpBB'),
'config_key_name',
array('append' => 'Bertie is cool!'),
'<textarea id="key_name" name="config[config_key_name]" rows="5" cols="30">phpBB</textarea>Bertie is cool!',
[
'tag' => 'textarea',
'id' => 'key_name',
'name' => 'config[config_key_name]',
'rows' => 5,
'cols' => 30,
'content' => 'phpBB',
'append' => 'Bertie is cool!',
]
),
);
}