From 3240c87733b35ebb461a3d5fe9b8e7b5897fe70e Mon Sep 17 00:00:00 2001 From: Chris Boden Date: Sun, 19 Oct 2014 12:21:32 -0400 Subject: [PATCH] Fragmented Hixie76 body test. refs #238 --- tests/unit/WebSocket/Version/Hixie76Test.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/unit/WebSocket/Version/Hixie76Test.php b/tests/unit/WebSocket/Version/Hixie76Test.php index d09cdf7..75998aa 100644 --- a/tests/unit/WebSocket/Version/Hixie76Test.php +++ b/tests/unit/WebSocket/Version/Hixie76Test.php @@ -80,4 +80,24 @@ class Hixie76Test extends \PHPUnit_Framework_TestCase { $mockApp->expects($this->once())->method('onOpen'); $server->onMessage($mockConn, $body . $this->_crlf . $this->_crlf); } + + public function testTcpFragmentedBodyUpgrade() { + $headers = $this->headerProvider(); + $body = base64_decode($this->_body); + $body1 = substr($body, 0, 4); + $body2 = substr($body, 4); + + $mockConn = $this->getMock('\Ratchet\ConnectionInterface'); + $mockApp = $this->getMock('\Ratchet\MessageComponentInterface'); + + $server = new HttpServer(new WsServer($mockApp)); + $server->onOpen($mockConn); + $server->onMessage($mockConn, $headers); + + $mockApp->expects($this->once())->method('onOpen'); + + $server->onMessage($mockConn, $body1); + $server->onMessage($mockConn, $body2); + $server->onMessage($mockConn, $this->_crlf . $this->_crlf); + } }