/** * @dataProvider provider */ public function testCurrency($value, $valueBinded, $format, $thousandsSeparator, $decimalSeparator, $currencyCode) { $sheet = $this->getMock('PHPExcel_Worksheet', array('getStyle', 'getNumberFormat', 'setFormatCode')); $sheet->expects($this->once())->method('getStyle')->will($this->returnSelf()); $sheet->expects($this->once())->method('getNumberFormat')->will($this->returnSelf()); $sheet->expects($this->once())->method('setFormatCode')->with($format)->will($this->returnSelf()); PHPExcel_Shared_String::setCurrencyCode($currencyCode); PHPExcel_Shared_String::setDecimalSeparator($decimalSeparator); PHPExcel_Shared_String::setThousandsSeparator($thousandsSeparator); $cell = new PHPExcel_Cell('A', 1, null, PHPExcel_Cell_DataType::TYPE_STRING, $sheet); $binder = new PHPExcel_Cell_AdvancedValueBinder(); $binder->bindValue($cell, $value); $this->assertEquals($valueBinded, $cell->getValue()); }
/** * @dataProvider provider */ public function testCurrency($value, $valueBinded, $format, $thousandsSeparator, $decimalSeparator, $currencyCode) { $sheet = $this->getMock('PHPExcel_Worksheet', array('getStyle', 'getNumberFormat', 'setFormatCode', 'getCellCacheController')); $cache = $this->getMockBuilder('PHPExcel_CachedObjectStorage_Memory')->disableOriginalConstructor()->getMock(); $cache->expects($this->any())->method('getParent')->will($this->returnValue($sheet)); $sheet->expects($this->once())->method('getStyle')->will($this->returnSelf()); $sheet->expects($this->once())->method('getNumberFormat')->will($this->returnSelf()); $sheet->expects($this->once())->method('setFormatCode')->with($format)->will($this->returnSelf()); $sheet->expects($this->any())->method('getCellCacheController')->will($this->returnValue($cache)); PHPExcel_Shared_String::setCurrencyCode($currencyCode); PHPExcel_Shared_String::setDecimalSeparator($decimalSeparator); PHPExcel_Shared_String::setThousandsSeparator($thousandsSeparator); $cell = new PHPExcel_Cell(NULL, PHPExcel_Cell_DataType::TYPE_STRING, $sheet); $binder = new PHPExcel_Cell_AdvancedValueBinder(); $binder->bindValue($cell, $value); $this->assertEquals($valueBinded, $cell->getValue()); }