public function testHeaderOverflowShouldEmitError() { $error = null; $parser = new RequestHeaderParser(); $parser->on('headers', $this->expectCallableNever()); $parser->on('error', function ($message) use(&$error) { $error = $message; }); $data = str_repeat('A', 4097); $parser->feed($data); $this->assertInstanceOf('OverflowException', $error); $this->assertSame('Maximum header size of 4096 exceeded.', $error->getMessage()); }
public function testGuzzleRequestParseException() { $error = null; $parser = new RequestHeaderParser(); $parser->on('headers', $this->expectCallableNever()); $parser->on('error', function ($message) use(&$error) { $error = $message; }); $this->assertSame(1, count($parser->listeners('headers'))); $this->assertSame(1, count($parser->listeners('error'))); $parser->feed("\r\n\r\n"); $this->assertInstanceOf('InvalidArgumentException', $error); $this->assertSame('Invalid message', $error->getMessage()); $this->assertSame(0, count($parser->listeners('headers'))); $this->assertSame(0, count($parser->listeners('error'))); }