TYPO3 API  SVNRelease
CurrencyViewHelperTest.php
Go to the documentation of this file.
00001 <?php
00002 
00003 /*                                                                        *
00004  * This script belongs to the FLOW3 package "Fluid".                      *
00005  *                                                                        *
00006  * It is free software; you can redistribute it and/or modify it under    *
00007  * the terms of the GNU General Public License as published by the Free   *
00008  * Software Foundation, either version 3 of the License, or (at your      *
00009  * option) any later version.                                             *
00010  *                                                                        *
00011  * This script is distributed in the hope that it will be useful, but     *
00012  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHAN-    *
00013  * TABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General      *
00014  * Public License for more details.                                       *
00015  *                                                                        *
00016  * You should have received a copy of the GNU General Public License      *
00017  * along with the script.                                                 *
00018  * If not, see http://www.gnu.org/licenses/gpl.html                       *
00019  *                                                                        *
00020  * The TYPO3 project - inspiring people to share!                         *
00021  *                                                                        */
00022 
00023 /**
00024  */
00025 class Tx_Fluid_Tests_Unit_ViewHelpers_Format_CurrencyViewHelperTest extends Tx_Extbase_Tests_Unit_BaseTestCase {
00026 
00027     /**
00028      * @test
00029      * @author Bastian Waidelich <bastian@typo3.org>
00030      */
00031     public function viewHelperRoundsFloatCorrectly() {
00032         $viewHelper = $this->getMock('Tx_Fluid_ViewHelpers_Format_CurrencyViewHelper', array('renderChildren'));
00033         $viewHelper->expects($this->once())->method('renderChildren')->will($this->returnValue(123.456));
00034         $actualResult = $viewHelper->render();
00035         $this->assertEquals('123,46', $actualResult);
00036     }
00037 
00038     /**
00039      * @test
00040      * @author Bastian Waidelich <bastian@typo3.org>
00041      */
00042     public function viewHelperRendersCurrencySign() {
00043         $viewHelper = $this->getMock('Tx_Fluid_ViewHelpers_Format_CurrencyViewHelper', array('renderChildren'));
00044         $viewHelper->expects($this->once())->method('renderChildren')->will($this->returnValue(123));
00045         $actualResult = $viewHelper->render('foo');
00046         $this->assertEquals('123,00 foo', $actualResult);
00047     }
00048 
00049     /**
00050      * @test
00051      * @author Bastian Waidelich <bastian@typo3.org>
00052      */
00053     public function viewHelperRespectsDecimalSeparator() {
00054         $viewHelper = $this->getMock('Tx_Fluid_ViewHelpers_Format_CurrencyViewHelper', array('renderChildren'));
00055         $viewHelper->expects($this->once())->method('renderChildren')->will($this->returnValue(12345));
00056         $actualResult = $viewHelper->render('', '|');
00057         $this->assertEquals('12.345|00', $actualResult);
00058     }
00059 
00060     /**
00061      * @test
00062      * @author Bastian Waidelich <bastian@typo3.org>
00063      */
00064     public function viewHelperRespectsThousandsSeparator() {
00065         $viewHelper = $this->getMock('Tx_Fluid_ViewHelpers_Format_CurrencyViewHelper', array('renderChildren'));
00066         $viewHelper->expects($this->once())->method('renderChildren')->will($this->returnValue(12345));
00067         $actualResult = $viewHelper->render('', ',', '|');
00068         $this->assertEquals('12|345,00', $actualResult);
00069     }
00070 
00071     /**
00072      * @test
00073      * @author Bastian Waidelich <bastian@typo3.org>
00074      */
00075     public function viewHelperRendersNullValues() {
00076         $viewHelper = $this->getMock('Tx_Fluid_ViewHelpers_Format_CurrencyViewHelper', array('renderChildren'));
00077         $viewHelper->expects($this->once())->method('renderChildren')->will($this->returnValue(NULL));
00078         $actualResult = $viewHelper->render();
00079         $this->assertEquals('0,00', $actualResult);
00080     }
00081 
00082     /**
00083      * @test
00084      * @author Bastian Waidelich <bastian@typo3.org>
00085      */
00086     public function viewHelperRendersNegativeAmounts() {
00087         $viewHelper = $this->getMock('Tx_Fluid_ViewHelpers_Format_CurrencyViewHelper', array('renderChildren'));
00088         $viewHelper->expects($this->once())->method('renderChildren')->will($this->returnValue(-123.456));
00089         $actualResult = $viewHelper->render();
00090         $this->assertEquals('-123,46', $actualResult);
00091     }
00092 }
00093 ?>