Exemple #1
0
 public function visitRationalNode(RationalNode $node)
 {
     return $node->getValue();
 }
Exemple #2
0
 public function testCanCreateRationalNode()
 {
     $node = new RationalNode(1, 2);
     $this->assertEquals($node->getNumerator(), 1);
     $this->assertEquals($node->getDenominator(), 2);
     $this->assertEquals($node->getValue(), 0.5);
     $node = new RationalNode(4, 8);
     $this->assertEquals($node->getNumerator(), 1);
     $this->assertEquals($node->getDenominator(), 2);
     $node = new RationalNode(-1, 2);
     $this->assertEquals($node->getNumerator(), -1);
     $this->assertEquals($node->getDenominator(), 2);
     $node = new RationalNode(1, -2);
     $this->assertEquals($node->getNumerator(), -1);
     $this->assertEquals($node->getDenominator(), 2);
     $this->setExpectedException(\UnexpectedValueException::class);
     $node = new RationalNode(1.2, 2);
 }