public function testInfiniteRound() { $pInf = Decimal::getPositiveInfinite(); $nInf = Decimal::getNegativeInfinite(); $this->assertTrue($pInf->round()->equals($pInf)); $this->assertTrue($nInf->round()->equals($nInf)); }
public function testCreateFromFloat() { $this->assertTrue(Decimal::create(-35.125)->equals(Decimal::fromFloat(-35.125))); $this->assertTrue(Decimal::create(0.0)->equals(Decimal::fromFloat(0.0))); $this->assertTrue(Decimal::create(35.125)->equals(Decimal::fromFloat(35.125))); $this->assertTrue(Decimal::create(INF)->equals(Decimal::getPositiveInfinite())); $this->assertTrue(Decimal::create(-INF)->equals(Decimal::getNegativeInfinite())); }
public function testInfiniteInfiniteComp() { $pInf = Decimal::getPositiveInfinite(); $nInf = Decimal::getNegativeInfinite(); $this->assertTrue($pInf->comp($pInf) === 0); $this->assertTrue($nInf->comp($nInf) === 0); $this->assertTrue($pInf->comp($nInf) === 1); $this->assertTrue($nInf->comp($pInf) === -1); }
public function testInfiniteMul() { $pInf = Decimal::getPositiveInfinite(); $nInf = Decimal::getNegativeInfinite(); $pOne = Decimal::fromInteger(1); $nOne = Decimal::fromInteger(-1); $oipp = $pOne->mul($pInf); $oipn = $pOne->mul($nInf); $oinp = $nOne->mul($pInf); $oinn = $nOne->mul($nInf); $this->assertTrue($oipp->isPositive()); $this->assertTrue($oinn->isPositive()); $this->assertTrue($oinp->isNegative()); $this->assertTrue($oipn->isNegative()); $this->assertTrue($oipp->isInfinite()); $this->assertTrue($oipn->isInfinite()); $this->assertTrue($oinp->isInfinite()); $this->assertTrue($oinn->isInfinite()); }
public function testInfiniteInfiniteSub() { $pInf = Decimal::getPositiveInfinite(); $nInf = Decimal::getNegativeInfinite(); $catched = false; try { $pInf->sub($pInf); } catch (\DomainException $e) { $catched = true; } $this->assertTrue($catched); $catched = false; try { $nInf->sub($nInf); } catch (\DomainException $e) { $catched = true; } $this->assertTrue($catched); $this->assertTrue($pInf->sub($nInf)->equals($pInf)); $this->assertTrue($nInf->sub($pInf)->equals($nInf)); }
public function testStringInfinite() { $infUU = Decimal::fromString("INF"); $infLL = Decimal::fromString("inf"); $infUL = Decimal::fromString("Inf"); $pInfUU = Decimal::fromString("+INF"); $pInfLL = Decimal::fromString("+inf"); $pInfUL = Decimal::fromString("+Inf"); $nInfUU = Decimal::fromString("-INF"); $nInfLL = Decimal::fromString("-inf"); $nInfUL = Decimal::fromString("-Inf"); $this->assertTrue($infUU->equals(Decimal::getPositiveInfinite())); $this->assertTrue($infLL->equals(Decimal::getPositiveInfinite())); $this->assertTrue($infUL->equals(Decimal::getPositiveInfinite())); $this->assertTrue($pInfUU->equals(Decimal::getPositiveInfinite())); $this->assertTrue($pInfLL->equals(Decimal::getPositiveInfinite())); $this->assertTrue($pInfUL->equals(Decimal::getPositiveInfinite())); $this->assertTrue($nInfUU->equals(Decimal::getNegativeInfinite())); $this->assertTrue($nInfLL->equals(Decimal::getNegativeInfinite())); $this->assertTrue($nInfUL->equals(Decimal::getNegativeInfinite())); }
public function testGetInfinite() { $this->assertTrue(Decimal::getPositiveInfinite()->equals(InfiniteDecimal::getPositiveInfinite())); $this->assertTrue(Decimal::getNegativeInfinite()->equals(InfiniteDecimal::getNegativeInfinite())); }
public function testPositiveInfiniteSqrt() { $pInf = Decimal::getPositiveInfinite(); $this->assertTrue($pInf->sqrt()->equals($pInf)); }