コード例 #1
0
 function testinternalRateOfReturn()
 {
     // various random calculations
     $this->assertTrue(abs(-0.02124485 - Math_Finance::internalRateOfReturn(array(-70000, 12000, 15000, 18000, 21000))) < FINANCE_PRECISION);
     $this->assertTrue(abs(0.08663 - Math_Finance::internalRateOfReturn(array(-70000, 12000, 15000, 18000, 21000, 26000))) < FINANCE_PRECISION);
     $this->assertTrue(abs(-0.443507 - Math_Finance::internalRateOfReturn(array(-70000, 12000, 15000), -0.4)) < FINANCE_PRECISION);
     // cash flow series must be an array
     $this->assertType('object', Math_Finance::internalRateOfReturn(-70000, 12000, 15000, 18000, 21000));
     // cash flow must contain at least one positive value and one negative value
     $this->assertType('object', Math_Finance::internalRateOfReturn(array(70000, 12000, 15000, 18000, 21000)));
 }