@@ -88,6 +88,38 @@ public function testParseWithMultipleIdsReturnsMessageWithLastEventIdFromStream(
8888 $ this ->assertEquals ('2 ' , $ message ->lastEventId );
8989 }
9090
91+ public function testParseReturnsMessageWithTypeFromStream ()
92+ {
93+ $ message = MessageEvent::parse ("data: hello \r\nevent: join " , '' );
94+
95+ $ this ->assertEquals ("hello " , $ message ->data );
96+ $ this ->assertEquals ('join ' , $ message ->type );
97+ }
98+
99+ public function testParseWithoutEventReturnsMessageWithDefaultMessageType ()
100+ {
101+ $ message = MessageEvent::parse ("data: hello " , '' );
102+
103+ $ this ->assertEquals ("hello " , $ message ->data );
104+ $ this ->assertEquals ('message ' , $ message ->type );
105+ }
106+
107+ public function testParseWithMultipleEventsReturnsMessageWithLastTypeFromStream ()
108+ {
109+ $ message = MessageEvent::parse ("data: hello \nevent: join \nevent: leave " , '' );
110+
111+ $ this ->assertEquals ("hello " , $ message ->data );
112+ $ this ->assertEquals ('leave ' , $ message ->type );
113+ }
114+
115+ public function testParseWithEmptyEventReturnsMessageWithDefaultMessageType ()
116+ {
117+ $ message = MessageEvent::parse ("data: hello \r\nevent: " , '' );
118+
119+ $ this ->assertEquals ("hello " , $ message ->data );
120+ $ this ->assertEquals ('message ' , $ message ->type );
121+ }
122+
91123 public function retryTimeDataProvider ()
92124 {
93125 return [
0 commit comments