コード例 #1
0
 /**
  * @covers ::convert
  */
 public function testConvert()
 {
     $source = $this->getMock('CL\\CurrencyConvert\\NullSource', array('getRateBetween'));
     $converter = new Converter($source);
     $bgn = new Currency('BGN');
     $gbp = new Currency('GBP');
     $source->expects($this->exactly(3))->method('getRateBetween')->will($this->returnValueMap(array(array($bgn, $gbp, 0.5), array($gbp, $bgn, 2))));
     $from = new Money(5000, $bgn);
     $result = $converter->convert($from, $gbp);
     $this->assertEquals(new Money(2500, $gbp), $result);
     $from = new Money(5000, $gbp);
     $result = $converter->convert($from, $bgn);
     $this->assertEquals(new Money(10000, $bgn), $result);
     $from = new Money(155, $bgn);
     $result = $converter->convert($from, $gbp, PHP_ROUND_HALF_DOWN);
     $this->assertEquals(new Money(77, $gbp), $result);
 }