Skip to content

Commit 083fbb1

Browse files
committed
Increase coverage in NumberHelper test.
1 parent ec311cf commit 083fbb1

File tree

1 file changed

+32
-35
lines changed

1 file changed

+32
-35
lines changed

tests/TestCase/View/Helper/NumberHelperTest.php

Lines changed: 32 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -81,49 +81,46 @@ public function tearDown()
8181
}
8282

8383
/**
84-
* test CakeNumber class methods are called correctly
84+
* Provider for method proxying.
85+
*
86+
* @return array
8587
*/
86-
public function testNumberHelperProxyMethodCalls()
88+
public function methodProvider()
8789
{
88-
$methods = [
89-
'precision', 'toReadableSize',
90+
return [
91+
['precision'],
92+
['toReadableSize'],
93+
['toPercentage'],
94+
['currency'],
95+
['format'],
96+
['addFormat'],
97+
['formatDelta'],
98+
['defaultCurrency'],
99+
['ordinal'],
90100
];
91-
$CakeNumber = $this->getMock(__NAMESPACE__ . '\NumberMock', $methods);
92-
$Number = new NumberHelperTestObject($this->View, ['engine' => __NAMESPACE__ . '\NumberMock']);
93-
$Number->attach($CakeNumber);
94-
95-
foreach ($methods as $method) {
96-
$CakeNumber->expects($this->at(0))->method($method);
97-
$Number->{$method}('who', 'what', 'when', 'where', 'how');
98-
}
99-
100-
$CakeNumber = $this->getMock(__NAMESPACE__ . '\NumberMock', ['toPercentage']);
101-
$Number = new NumberHelperTestObject($this->View, ['engine' => __NAMESPACE__ . '\NumberMock']);
102-
$Number->attach($CakeNumber);
103-
$CakeNumber->expects($this->at(0))->method('toPercentage');
104-
$Number->toPercentage('who', 'what', ['when']);
105-
106-
$CakeNumber = $this->getMock(__NAMESPACE__ . '\NumberMock', ['currency']);
107-
$Number = new NumberHelperTestObject($this->View, ['engine' => __NAMESPACE__ . '\NumberMock']);
108-
$Number->attach($CakeNumber);
109-
$CakeNumber->expects($this->at(0))->method('currency');
110-
$Number->currency('who', 'what', ['when']);
111-
112-
$CakeNumber = $this->getMock(__NAMESPACE__ . '\NumberMock', ['format']);
113-
$Number = new NumberHelperTestObject($this->View, ['engine' => __NAMESPACE__ . '\NumberMock']);
114-
$Number->attach($CakeNumber);
115-
$CakeNumber->expects($this->at(0))->method('format');
116-
$Number->format('who', ['when']);
101+
}
117102

118-
$CakeNumber = $this->getMock(__NAMESPACE__ . '\NumberMock', ['addFormat']);
119-
$Number = new NumberHelperTestObject($this->View, ['engine' => __NAMESPACE__ . '\NumberMock']);
120-
$Number->attach($CakeNumber);
121-
$CakeNumber->expects($this->at(0))->method('addFormat');
122-
$Number->addFormat('who', ['when']);
103+
/**
104+
* test CakeNumber class methods are called correctly
105+
*
106+
* @dataProvider methodProvider
107+
* @return void
108+
*/
109+
public function testNumberHelperProxyMethodCalls($method)
110+
{
111+
$number = $this->getMock(__NAMESPACE__ . '\NumberMock', [$method]);
112+
$helper = new NumberHelperTestObject($this->View, ['engine' => __NAMESPACE__ . '\NumberMock']);
113+
$helper->attach($number);
114+
$number->expects($this->at(0))
115+
->method($method)
116+
->with(12.3);
117+
$helper->{$method}(12.3, ['options']);
123118
}
124119

125120
/**
126121
* test engine override
122+
*
123+
* @return void
127124
*/
128125
public function testEngineOverride()
129126
{

0 commit comments

Comments
 (0)