Search in sources :

Example 6 with LocalWebSocketSession

use of org.eclipse.jetty.websocket.common.io.LocalWebSocketSession in project jetty.project by eclipse.

the class EventDriverTest method testAnnotated_Frames.

@Test
public void testAnnotated_Frames() throws Exception {
    AnnotatedFramesSocket socket = new AnnotatedFramesSocket();
    EventDriver driver = wrap(socket);
    try (LocalWebSocketSession conn = new CloseableLocalWebSocketSession(container, testname, driver)) {
        conn.open();
        driver.incomingFrame(new PingFrame().setPayload("PING"));
        driver.incomingFrame(new TextFrame().setPayload("Text Me"));
        driver.incomingFrame(new BinaryFrame().setPayload("Hello Bin"));
        driver.incomingFrame(new CloseInfo(StatusCode.SHUTDOWN, "testcase").asFrame());
        socket.capture.assertEventCount(6);
        socket.capture.pop().assertEventStartsWith("onConnect(");
        socket.capture.pop().assertEventStartsWith("onFrame(PING[");
        socket.capture.pop().assertEventStartsWith("onFrame(TEXT[");
        socket.capture.pop().assertEventStartsWith("onFrame(BINARY[");
        socket.capture.pop().assertEventStartsWith("onFrame(CLOSE[");
        socket.capture.pop().assertEventStartsWith("onClose(1001,");
    }
}
Also used : AnnotatedFramesSocket(examples.AnnotatedFramesSocket) LocalWebSocketSession(org.eclipse.jetty.websocket.common.io.LocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) BinaryFrame(org.eclipse.jetty.websocket.common.frames.BinaryFrame) PingFrame(org.eclipse.jetty.websocket.common.frames.PingFrame) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) TextFrame(org.eclipse.jetty.websocket.common.frames.TextFrame) CloseInfo(org.eclipse.jetty.websocket.common.CloseInfo) Test(org.junit.Test)

Example 7 with LocalWebSocketSession

use of org.eclipse.jetty.websocket.common.io.LocalWebSocketSession in project jetty.project by eclipse.

the class EventDriverTest method testListenerEmptyPingPong.

@Test
public void testListenerEmptyPingPong() throws Exception {
    ListenerPingPongSocket socket = new ListenerPingPongSocket();
    EventDriver driver = wrap(socket);
    try (LocalWebSocketSession conn = new CloseableLocalWebSocketSession(container, testname, driver)) {
        conn.start();
        conn.open();
        driver.incomingFrame(new PingFrame());
        driver.incomingFrame(new PongFrame());
        driver.incomingFrame(new CloseInfo(StatusCode.NORMAL).asFrame());
        socket.capture.assertEventCount(4);
        socket.capture.pop().assertEventStartsWith("onWebSocketConnect");
        socket.capture.pop().assertEventStartsWith("onWebSocketPing(");
        socket.capture.pop().assertEventStartsWith("onWebSocketPong(");
        socket.capture.pop().assertEventStartsWith("onWebSocketClose(1000,");
    }
}
Also used : PongFrame(org.eclipse.jetty.websocket.common.frames.PongFrame) LocalWebSocketSession(org.eclipse.jetty.websocket.common.io.LocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) PingFrame(org.eclipse.jetty.websocket.common.frames.PingFrame) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) ListenerPingPongSocket(examples.ListenerPingPongSocket) CloseInfo(org.eclipse.jetty.websocket.common.CloseInfo) Test(org.junit.Test)

Example 8 with LocalWebSocketSession

use of org.eclipse.jetty.websocket.common.io.LocalWebSocketSession in project jetty.project by eclipse.

the class EventDriverTest method testAdapter_ConnectClose.

@Test
public void testAdapter_ConnectClose() throws Exception {
    AdapterConnectCloseSocket socket = new AdapterConnectCloseSocket();
    EventDriver driver = wrap(socket);
    try (LocalWebSocketSession conn = new CloseableLocalWebSocketSession(container, testname, driver)) {
        conn.open();
        driver.incomingFrame(new CloseInfo(StatusCode.NORMAL).asFrame());
        socket.capture.assertEventCount(2);
        socket.capture.pop().assertEventStartsWith("onWebSocketConnect");
        socket.capture.pop().assertEventStartsWith("onWebSocketClose");
    }
}
Also used : LocalWebSocketSession(org.eclipse.jetty.websocket.common.io.LocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) AdapterConnectCloseSocket(examples.AdapterConnectCloseSocket) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) CloseInfo(org.eclipse.jetty.websocket.common.CloseInfo) Test(org.junit.Test)

Example 9 with LocalWebSocketSession

use of org.eclipse.jetty.websocket.common.io.LocalWebSocketSession in project jetty.project by eclipse.

the class EventDriverTest method testAnnotated_InputStream.

@Test
public void testAnnotated_InputStream() throws IOException, TimeoutException, InterruptedException {
    AnnotatedBinaryStreamSocket socket = new AnnotatedBinaryStreamSocket();
    EventDriver driver = wrap(socket);
    try (LocalWebSocketSession conn = new CloseableLocalWebSocketSession(container, testname, driver)) {
        conn.open();
        driver.incomingFrame(makeBinaryFrame("Hello World", true));
        driver.incomingFrame(new CloseInfo(StatusCode.NORMAL).asFrame());
        socket.capture.assertEventCount(3);
        socket.capture.pop().assertEventStartsWith("onConnect");
        socket.capture.pop().assertEventRegex("^onBinary\\(.*InputStream.*");
        socket.capture.pop().assertEventStartsWith("onClose(1000,");
    }
}
Also used : LocalWebSocketSession(org.eclipse.jetty.websocket.common.io.LocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) AnnotatedBinaryStreamSocket(examples.AnnotatedBinaryStreamSocket) CloseInfo(org.eclipse.jetty.websocket.common.CloseInfo) Test(org.junit.Test)

Example 10 with LocalWebSocketSession

use of org.eclipse.jetty.websocket.common.io.LocalWebSocketSession in project jetty.project by eclipse.

the class EventDriverTest method testListenerBasic_Text.

@Test
public void testListenerBasic_Text() throws Exception {
    ListenerBasicSocket socket = new ListenerBasicSocket();
    EventDriver driver = wrap(socket);
    try (LocalWebSocketSession conn = new CloseableLocalWebSocketSession(container, testname, driver)) {
        conn.start();
        conn.open();
        driver.incomingFrame(new TextFrame().setPayload("Hello World"));
        driver.incomingFrame(new CloseInfo(StatusCode.NORMAL).asFrame());
        socket.capture.assertEventCount(3);
        socket.capture.pop().assertEventStartsWith("onWebSocketConnect");
        socket.capture.pop().assertEventStartsWith("onWebSocketText(\"Hello World\")");
        socket.capture.pop().assertEventStartsWith("onWebSocketClose(1000,");
    }
}
Also used : LocalWebSocketSession(org.eclipse.jetty.websocket.common.io.LocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) CloseableLocalWebSocketSession(org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession) ListenerBasicSocket(examples.ListenerBasicSocket) TextFrame(org.eclipse.jetty.websocket.common.frames.TextFrame) CloseInfo(org.eclipse.jetty.websocket.common.CloseInfo) Test(org.junit.Test)

Aggregations

LocalWebSocketSession (org.eclipse.jetty.websocket.common.io.LocalWebSocketSession)10 CloseInfo (org.eclipse.jetty.websocket.common.CloseInfo)8 CloseableLocalWebSocketSession (org.eclipse.jetty.websocket.common.io.CloseableLocalWebSocketSession)8 Test (org.junit.Test)8 PingFrame (org.eclipse.jetty.websocket.common.frames.PingFrame)3 ListenerPingPongSocket (examples.ListenerPingPongSocket)2 OutgoingFrames (org.eclipse.jetty.websocket.api.extensions.OutgoingFrames)2 EventDriver (org.eclipse.jetty.websocket.common.events.EventDriver)2 EventDriverFactory (org.eclipse.jetty.websocket.common.events.EventDriverFactory)2 PongFrame (org.eclipse.jetty.websocket.common.frames.PongFrame)2 TextFrame (org.eclipse.jetty.websocket.common.frames.TextFrame)2 SimpleContainerScope (org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope)2 WebSocketContainerScope (org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope)2 Before (org.junit.Before)2 AdapterConnectCloseSocket (examples.AdapterConnectCloseSocket)1 AnnotatedBinaryArraySocket (examples.AnnotatedBinaryArraySocket)1 AnnotatedBinaryStreamSocket (examples.AnnotatedBinaryStreamSocket)1 AnnotatedFramesSocket (examples.AnnotatedFramesSocket)1 AnnotatedTextSocket (examples.AnnotatedTextSocket)1 ListenerBasicSocket (examples.ListenerBasicSocket)1