Mocked message expects array

This commit is contained in:
Alex Renoki 2020-08-22 20:53:33 +03:00
parent b5f081c537
commit ce652bbbcb
10 changed files with 75 additions and 57 deletions

View File

@ -22,12 +22,12 @@ class ChannelReplicationTest extends TestCase
{
$connection = $this->getWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'channel' => 'basic-channel',
],
]));
]);
$this->pusherServer->onOpen($connection);
@ -47,12 +47,12 @@ class ChannelReplicationTest extends TestCase
$this->assertTrue($channel->hasConnections());
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:unsubscribe',
'data' => [
'channel' => 'test-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -67,7 +67,7 @@ class ChannelReplicationTest extends TestCase
$connection = $this->getConnectedWebSocketConnection(['test-channel']);
$message = new Message('{"event": "client-test", "data": {}, "channel": "test-channel"}');
$message = new Message(['event' => 'client-test', 'data' => [], 'channel' => 'test-channel']);
$this->pusherServer->onMessage($connection, $message);
@ -84,7 +84,7 @@ class ChannelReplicationTest extends TestCase
$connection = $this->getConnectedWebSocketConnection(['test-channel']);
$message = new Message('{"event": "client-test", "data": {}, "channel": "test-channel"}');
$message = new Message(['event' => 'client-test', 'data' => [], 'channel' => 'test-channel']);
$this->pusherServer->onMessage($connection, $message);
@ -147,9 +147,9 @@ class ChannelReplicationTest extends TestCase
{
$connection = $this->getConnectedWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:ping',
]));
]);
$this->pusherServer->onMessage($connection, $message);

View File

@ -12,12 +12,12 @@ class ChannelTest extends TestCase
{
$connection = $this->getWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'channel' => 'basic-channel',
],
]));
]);
$this->pusherServer->onOpen($connection);
@ -37,12 +37,12 @@ class ChannelTest extends TestCase
$this->assertTrue($channel->hasConnections());
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:unsubscribe',
'data' => [
'channel' => 'test-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -57,7 +57,7 @@ class ChannelTest extends TestCase
$connection = $this->getConnectedWebSocketConnection(['test-channel']);
$message = new Message('{"event": "client-test", "data": {}, "channel": "test-channel"}');
$message = new Message(['event' => 'client-test', 'data' => [], 'channel' => 'test-channel']);
$this->pusherServer->onMessage($connection, $message);
@ -74,7 +74,7 @@ class ChannelTest extends TestCase
$connection = $this->getConnectedWebSocketConnection(['test-channel']);
$message = new Message('{"event": "client-test", "data": {}, "channel": "test-channel"}');
$message = new Message(['event' => 'client-test', 'data' => [], 'channel' => 'test-channel']);
$this->pusherServer->onMessage($connection, $message);
@ -137,9 +137,9 @@ class ChannelTest extends TestCase
{
$connection = $this->getConnectedWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:ping',
]));
]);
$this->pusherServer->onMessage($connection, $message);

View File

@ -33,14 +33,14 @@ class PresenceChannelReplicationTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -67,14 +67,14 @@ class PresenceChannelReplicationTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -89,13 +89,13 @@ class PresenceChannelReplicationTest extends TestCase
$this->getPublishClient()
->resetAssertions();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:unsubscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -117,14 +117,14 @@ class PresenceChannelReplicationTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);

View File

@ -15,13 +15,13 @@ class PresenceChannelTest extends TestCase
$connection = $this->getWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => 'invalid',
'channel' => 'presence-channel',
],
]));
]);
$this->pusherServer->onOpen($connection);
@ -46,14 +46,14 @@ class PresenceChannelTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -77,14 +77,14 @@ class PresenceChannelTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -92,13 +92,13 @@ class PresenceChannelTest extends TestCase
'channel' => 'presence-channel',
]);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:unsubscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
}
@ -118,14 +118,14 @@ class PresenceChannelTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -150,13 +150,13 @@ class PresenceChannelTest extends TestCase
$signature = "{$connection->socketId}:presence-channel:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:unsubscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => 'presence-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);

View File

@ -25,13 +25,13 @@ class PrivateChannelReplicationTest extends TestCase
$connection = $this->getWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => 'invalid',
'channel' => 'private-channel',
],
]));
]);
$this->pusherServer->onOpen($connection);
@ -49,13 +49,13 @@ class PrivateChannelReplicationTest extends TestCase
$hashedAppSecret = hash_hmac('sha256', $signature, $connection->app->secret);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => "{$connection->app->key}:{$hashedAppSecret}",
'channel' => 'private-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);

View File

@ -15,13 +15,13 @@ class PrivateChannelTest extends TestCase
$connection = $this->getWebSocketConnection();
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => 'invalid',
'channel' => 'private-channel',
],
]));
]);
$this->pusherServer->onOpen($connection);
@ -39,13 +39,13 @@ class PrivateChannelTest extends TestCase
$hashedAppSecret = hash_hmac('sha256', $signature, $connection->app->secret);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => "{$connection->app->key}:{$hashedAppSecret}",
'channel' => 'private-channel',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);

View File

@ -58,7 +58,7 @@ class ConnectionTest extends TestCase
{
$connection = $this->getWebSocketConnection();
$message = new Message('{"event": "pusher:ping"}');
$message = new Message(['event' => 'pusher:ping']);
$this->pusherServer->onOpen($connection);

View File

@ -12,13 +12,13 @@ class PusherClientMessageTest extends TestCase
{
$connection = $this->getConnectedWebSocketConnection(['test-channel']);
$message = new Message(json_encode([
$message = new Message([
'event' => 'client-test',
'channel' => 'test-channel',
'data' => [
'client-event' => 'test',
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
@ -42,13 +42,13 @@ class PusherClientMessageTest extends TestCase
$connection1 = $this->getConnectedWebSocketConnection(['test-channel']);
$connection2 = $this->getConnectedWebSocketConnection(['test-channel']);
$message = new Message(json_encode([
$message = new Message([
'event' => 'client-test',
'channel' => 'test-channel',
'data' => [
'client-event' => 'test',
],
]));
]);
$this->pusherServer->onMessage($connection1, $message);

View File

@ -2,17 +2,35 @@
namespace BeyondCode\LaravelWebSockets\Tests\Mocks;
class Message extends \Ratchet\RFC6455\Messaging\Message
use Ratchet\RFC6455\Messaging\Message as BaseMessage;
class Message extends BaseMessage
{
/**
* The payload as array.
*
* @var array
*/
protected $payload;
public function __construct($payload)
/**
* Create a new message instance.
*
* @param array $payload
* @return void
*/
public function __construct(array $payload)
{
$this->payload = $payload;
}
public function getPayload()
/**
* Get the payload as json-encoded string.
*
* @return string
*/
public function getPayload(): string
{
return $this->payload;
return json_encode($this->payload);
}
}

View File

@ -160,12 +160,12 @@ abstract class TestCase extends \Orchestra\Testbench\TestCase
$this->pusherServer->onOpen($connection);
foreach ($channelsToJoin as $channel) {
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'channel' => $channel,
],
]));
]);
$this->pusherServer->onMessage($connection, $message);
}
@ -194,14 +194,14 @@ abstract class TestCase extends \Orchestra\Testbench\TestCase
$signature = "{$connection->socketId}:{$channel}:".json_encode($channelData);
$message = new Message(json_encode([
$message = new Message([
'event' => 'pusher:subscribe',
'data' => [
'auth' => $connection->app->key.':'.hash_hmac('sha256', $signature, $connection->app->secret),
'channel' => $channel,
'channel_data' => json_encode($channelData),
],
]));
]);
$this->pusherServer->onMessage($connection, $message);