<?php namespace NoccyLabs\Mercureact\Broker; use PHPUnit\Framework\Attributes\CoversClass; #[CoversClass(Message::class)] class MessageTest extends \PHPUnit\Framework\TestCase { public function testCreatingMessageFromData() { $message = Message::fromData([ 'id' => '1a', 'topic' => '2b', 'data' => '3c', 'type' => '4d', 'retry' => 42, 'private' => true, ]); $this->assertEquals("1a", $message->id); $this->assertEquals(["2b"], $message->topic); $this->assertEquals("3c", $message->data); $this->assertEquals("4d", $message->type); $this->assertEquals(42, $message->retry); $this->assertEquals(true, $message->private); $message = Message::fromData([ 'id' => '1a', 'topic' => ['2b'], 'data' => '3c', 'type' => '4d', 'retry' => 42, 'private' => true, ]); $this->assertEquals("1a", $message->id); $this->assertEquals(["2b"], $message->topic); $this->assertEquals("3c", $message->data); $this->assertEquals("4d", $message->type); $this->assertEquals(42, $message->retry); $this->assertEquals(true, $message->private); } public function testCreatingSseFromMessage() { $message = Message::fromData([ 'id' => '1a', 'topic' => '2b', 'data' => '3c', 'type' => '4d', 'retry' => 42, 'private' => true, ]); $sse = $message->toString(); $this->assertEquals(<<<EXPECT event: 4d retry: 42 id: 1a data: 3c EXPECT, $sse); } }