示例#1
0
 public function testCanCompareNumberNodes()
 {
     $node = new NumberNode(3);
     $other = new VariableNode('x');
     $inode = new IntegerNode(2);
     $rnode = new RationalNode(4, 2);
     $this->assertFalse($node->compareTo(null));
     $this->assertFalse($node->compareTo($other));
     $this->assertTrue($node->compareTo($node));
     $this->assertFalse($node->compareTo(new IntegerNode(7)));
     $this->assertTrue($inode->compareTo($rnode));
     $this->assertTrue($rnode->compareTo($inode));
     $this->assertTrue($inode->compareTo($inode));
     $this->assertTrue($rnode->compareTo($rnode));
     $this->assertFalse($inode->compareTo(new Integernode(3)));
     $this->assertFalse($node->compareTo(null));
     $this->assertFalse($other->compareTo(null));
     $this->assertFalse($inode->compareTo(null));
     $this->assertFalse($rnode->compareTo(null));
     $this->assertFalse($rnode->compareTo(new IntegerNode(3)));
     $this->assertFalse($rnode->compareTo($other));
     $this->assertFalse($inode->compareTo(new RationalNode(3, 5)));
     $this->assertFalse($inode->compareTo($other));
 }