| 3 |
liveuser |
1 |
<?php
|
|
|
2 |
|
|
|
3 |
namespace Ratchet\RFC6455\Test\Unit\Messaging;
|
|
|
4 |
|
|
|
5 |
use Ratchet\RFC6455\Messaging\Frame;
|
|
|
6 |
use Ratchet\RFC6455\Messaging\Message;
|
|
|
7 |
use PHPUnit\Framework\TestCase;
|
|
|
8 |
|
|
|
9 |
/**
|
|
|
10 |
* @covers Ratchet\RFC6455\Messaging\Message
|
|
|
11 |
*/
|
|
|
12 |
class MessageTest extends TestCase {
|
|
|
13 |
/** @var Message */
|
|
|
14 |
protected $message;
|
|
|
15 |
|
|
|
16 |
public function setUp() {
|
|
|
17 |
$this->message = new Message;
|
|
|
18 |
}
|
|
|
19 |
|
|
|
20 |
public function testNoFrames() {
|
|
|
21 |
$this->assertFalse($this->message->isCoalesced());
|
|
|
22 |
}
|
|
|
23 |
|
|
|
24 |
public function testNoFramesOpCode() {
|
|
|
25 |
$this->setExpectedException('UnderflowException');
|
|
|
26 |
$this->message->getOpCode();
|
|
|
27 |
}
|
|
|
28 |
|
|
|
29 |
public function testFragmentationPayload() {
|
|
|
30 |
$a = 'Hello ';
|
|
|
31 |
$b = 'World!';
|
|
|
32 |
$f1 = new Frame($a, false);
|
|
|
33 |
$f2 = new Frame($b, true, Frame::OP_CONTINUE);
|
|
|
34 |
$this->message->addFrame($f1)->addFrame($f2);
|
|
|
35 |
$this->assertEquals(strlen($a . $b), $this->message->getPayloadLength());
|
|
|
36 |
$this->assertEquals($a . $b, $this->message->getPayload());
|
|
|
37 |
}
|
|
|
38 |
|
|
|
39 |
public function testUnbufferedFragment() {
|
|
|
40 |
$this->message->addFrame(new Frame('The quick brow', false));
|
|
|
41 |
$this->setExpectedException('UnderflowException');
|
|
|
42 |
$this->message->getPayload();
|
|
|
43 |
}
|
|
|
44 |
|
|
|
45 |
public function testGetOpCode() {
|
|
|
46 |
$this->message
|
|
|
47 |
->addFrame(new Frame('The quick brow', false, Frame::OP_TEXT))
|
|
|
48 |
->addFrame(new Frame('n fox jumps ov', false, Frame::OP_CONTINUE))
|
|
|
49 |
->addFrame(new Frame('er the lazy dog', true, Frame::OP_CONTINUE))
|
|
|
50 |
;
|
|
|
51 |
$this->assertEquals(Frame::OP_TEXT, $this->message->getOpCode());
|
|
|
52 |
}
|
|
|
53 |
|
|
|
54 |
public function testGetUnBufferedPayloadLength() {
|
|
|
55 |
$this->message
|
|
|
56 |
->addFrame(new Frame('The quick brow', false, Frame::OP_TEXT))
|
|
|
57 |
->addFrame(new Frame('n fox jumps ov', false, Frame::OP_CONTINUE))
|
|
|
58 |
;
|
|
|
59 |
$this->assertEquals(28, $this->message->getPayloadLength());
|
|
|
60 |
}
|
|
|
61 |
}
|