1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-06-02 04:24:56 +02:00

Merge remote-tracking branch 'nickvergessen/ticket/12205' into ticket/12205-develop

* nickvergessen/ticket/12205:
  [ticket/12205] Do not display 0 for empty integers when show_novalue is off

Conflicts:
	phpBB/includes/functions_profile_fields.php
This commit is contained in:
Joas Schilling 2014-02-25 18:35:03 +01:00
commit ae98810ddc
2 changed files with 43 additions and 1 deletions

View File

@ -141,7 +141,7 @@ class type_int extends type_base
*/
public function get_profile_value($field_value, $field_data)
{
if ($field_value === '' && !$field_data['field_show_novalue'])
if (($field_value === '' || $field_value === null) && !$field_data['field_show_novalue'])
{
return null;
}

View File

@ -0,0 +1,42 @@
<?php
/**
*
* @package testing
* @copyright (c) 2014 phpBB Group
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
class phpbb_profile_get_profile_value_test extends phpbb_test_case
{
static public function get_profile_value_int_data()
{
return array(
array('\phpbb\profilefields\type\type_int', '10', true, 10),
array('\phpbb\profilefields\type\type_int', '0', true, 0),
array('\phpbb\profilefields\type\type_int', '', true, 0),
array('\phpbb\profilefields\type\type_int', null, true, 0),
array('\phpbb\profilefields\type\type_int', '10', false, 10),
array('\phpbb\profilefields\type\type_int', '0', false, 0),
array('\phpbb\profilefields\type\type_int', '', false, null),
array('\phpbb\profilefields\type\type_int', null, false, null),
);
}
/**
* @dataProvider get_profile_value_int_data
*/
public function test_get_profile_value_int($type, $value, $show_novalue, $expected)
{
$cp = new $type(
$this->getMock('\phpbb\request\request'),
$this->getMock('\phpbb\template\template'),
$this->getMock('\phpbb\user')
);
$this->assertSame($expected, $cp->get_profile_value($value, array(
'field_type' => $type,
'field_show_novalue' => $show_novalue,
)));
}
}