Changeset View
Changeset View
Standalone View
Standalone View
branches/5.2.x/core/tests/kernel/utility/formatters/kFormatterTest.php
Property | Old Value | New Value |
---|---|---|
svn:eol-style | null | LF |
svn:keywords | null | Id |
<?php | |||||
final class kFormatterTest extends AbstractTestCase | |||||
{ | |||||
/** | |||||
* @dataProvider cutZerosDataProvider | |||||
*/ | |||||
public function testCutZeros($raw_number, $formatted_number, array $field_options) | |||||
{ | |||||
$formatter = new kFormatter(); | |||||
$item_prophecy = $this->prophesize('kDBItem'); | |||||
$item_prophecy->GetFieldOptions('FieldName')->willReturn(array( | |||||
'type' => 'float', | |||||
'format' => '%01.6f', | |||||
) + $field_options); | |||||
$item = $item_prophecy->reveal(); | |||||
$this->assertSame($formatted_number, $formatter->Format($raw_number, 'FieldName', $item)); | |||||
} | |||||
public function cutZerosDataProvider() | |||||
{ | |||||
return array( | |||||
'long' => array('12.345000', '12.345', array('cut_zeros' => 1)), | |||||
'short' => array('12.300000', '12.3', array('cut_zeros' => 1)), | |||||
'exact+leading_zero' => array('12.030000', '12.03', array('cut_zeros' => 1)), | |||||
'very_long' => array('12.030050', '12.03005', array('cut_zeros' => 1)), | |||||
'no_decimals' => array('12.000000', '12', array('cut_zeros' => 1)), | |||||
); | |||||
} | |||||
/** | |||||
* @dataProvider keepCentsDataProvider | |||||
*/ | |||||
public function testKeepCents($raw_number, $formatted_number, array $field_options) | |||||
{ | |||||
$formatter = new kFormatter(); | |||||
$item_prophecy = $this->prophesize('kDBItem'); | |||||
$item_prophecy->GetFieldOptions('FieldName')->willReturn(array( | |||||
'type' => 'float', | |||||
'format' => '%01.6f', | |||||
) + $field_options); | |||||
$item = $item_prophecy->reveal(); | |||||
$this->assertSame($formatted_number, $formatter->Format($raw_number, 'FieldName', $item)); | |||||
} | |||||
public function keepCentsDataProvider() | |||||
{ | |||||
return array( | |||||
'long' => array('12.345000', '12.345', array('keep_cents' => 2)), | |||||
'short' => array('12.300000', '12.30', array('keep_cents' => 2)), | |||||
'exact+leading_zero' => array('12.030000', '12.03', array('keep_cents' => 2)), | |||||
'very_long' => array('12.030050', '12.03005', array('keep_cents' => 2)), | |||||
'no_decimals' => array('12.000000', '12.00', array('keep_cents' => 2)), | |||||
); | |||||
} | |||||
} |