File tree Expand file tree Collapse file tree 2 files changed +16
-2
lines changed Expand file tree Collapse file tree 2 files changed +16
-2
lines changed Original file line number Diff line number Diff line change @@ -117,8 +117,11 @@ impl Sender {
117117 }
118118
119119 // Write the data section, and end.
120- let msg = format ! ( "data:{}\n \n " , data) ;
121- self . inner_send ( msg) . await ?;
120+ for line in data. lines ( ) {
121+ let msg = format ! ( "data:{}\n " , line) ;
122+ self . inner_send ( msg) . await ?;
123+ }
124+ self . inner_send ( "\n " ) . await ?;
122125
123126 Ok ( ( ) )
124127 }
Original file line number Diff line number Diff line change @@ -95,6 +95,17 @@ async fn encode_retry() -> http_types::Result<()> {
9595 Ok ( ( ) )
9696}
9797
98+ #[ async_std:: test]
99+ async fn encode_multiline_message ( ) -> http_types:: Result < ( ) > {
100+ let ( sender, encoder) = encode ( ) ;
101+ task:: spawn ( async move { sender. send ( "cats" , "chashu\n nori" , None ) . await } ) ;
102+
103+ let mut reader = decode ( BufReader :: new ( encoder) ) ;
104+ let event = reader. next ( ) . await . unwrap ( ) ?;
105+ assert_message ( & event, "cats" , "chashu\n nori" , None ) ;
106+ Ok ( ( ) )
107+ }
108+
98109#[ async_std:: test]
99110async fn dropping_encoder ( ) -> http_types:: Result < ( ) > {
100111 let ( sender, encoder) = encode ( ) ;
You can’t perform that action at this time.
0 commit comments