Handle bad STOMP messages in StompSubProtocolHandler

Issue: SPR-11277
This commit is contained in:
Rossen Stoyanchev
2014-01-02 12:27:59 -05:00
parent 1f49f994e6
commit ef13dbfcdd
2 changed files with 27 additions and 4 deletions

View File

@@ -34,6 +34,7 @@ import org.springframework.messaging.simp.stomp.StompDecoder;
import org.springframework.messaging.simp.stomp.StompHeaderAccessor;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.web.socket.TextMessage;
import org.springframework.web.socket.WebSocketMessage;
import org.springframework.web.socket.handler.TestWebSocketSession;
import static org.junit.Assert.*;
@@ -119,4 +120,17 @@ public class StompSubProtocolHandlerTests {
assertEquals(0, this.session.getSentMessages().size());
}
@Test
public void invalidStompCommand() {
TextMessage textMessage = new TextMessage("FOO");
this.stompHandler.handleMessageFromClient(this.session, textMessage, this.channel);
verifyZeroInteractions(this.channel);
assertEquals(1, this.session.getSentMessages().size());
TextMessage actual = (TextMessage) this.session.getSentMessages().get(0);
assertTrue(actual.getPayload().startsWith("ERROR"));
}
}