public function testPop() { $input = new ParseInput(array('a', 'a', 'b', 'b')); $this->assertEquals('a', $input->peek()); $this->assertEquals('a', $input->peek(1)); $this->assertEquals('b', $input->peek(2)); $this->assertEquals('b', $input->peek(3)); $this->assertNull($input->peek(4)); $this->assertEquals('a', $input->pop()); $this->assertEquals('a', $input->peek()); $this->assertEquals('b', $input->peek(1)); $this->assertEquals('b', $input->peek(2)); $this->assertNull($input->peek(3)); }
/** * @param ParseInput $input * @return string */ public static function parseInt(ParseInput $input) { while (is_numeric($input->peek())) { $int .= $input->pop(); } if ($int == '') { return null; } return $int; }