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)); }