Package com.chenshuo.muduo.example.multiplexer

Examples of com.chenshuo.muduo.example.multiplexer.DataEvent


            fail("EventQueue is not empty");

        // step 1
        MockClient client = god.newClient();
        Event ev = queue.take();
        DataEvent de = (DataEvent) ev;
        assertEquals(EventSource.kBackend, de.source);

        Matcher m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        final int connId = Integer.parseInt(m.group(1));
        assertTrue(connId > 0);
        client.setId(connId);

        assertEquals("UP", m.group(2));

        // step 2
        ChannelBuffer buf = backend.sendToClient(connId, "hello");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kClient, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        // step 3
        buf = backend.sendToClient(connId, "World!");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kClient, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < 255; ++i)
            sb.append('H');

        buf = backend.sendToClient(connId, sb.toString());

        de = (DataEvent) queue.take();
        assertEquals(EventSource.kClient, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);

        // step 4
        client.disconnect();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        assertEquals(connId, Integer.parseInt(m.group(1)));
        assertEquals("DOWN", m.group(2));
View Full Code Here


            fail("EventQueue is not empty");

        // step 1
        MockClient client = god.newClient();
        Event ev = queue.take();
        DataEvent de = (DataEvent) ev;
        assertEquals(EventSource.kBackend, de.source);

        Matcher m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        final int connId = Integer.parseInt(m.group(1));
        assertTrue(connId > 0);
        client.setId(connId);

        assertEquals("UP", m.group(2));

        // step 2
        ChannelBuffer buf = client.send("hello");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        // step 3
        buf = backend.sendToClient(connId, "World!");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kClient, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        // step 4
        client.disconnect();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        assertEquals(connId, Integer.parseInt(m.group(1)));
        assertEquals("DOWN", m.group(2));
View Full Code Here

            fail("EventQueue is not empty");

        // step 1
        MockClient client = god.newClient();
        Event ev = queue.take();
        DataEvent de = (DataEvent) ev;
        assertEquals(EventSource.kBackend, de.source);

        Matcher m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        final int connId = Integer.parseInt(m.group(1));
        assertTrue(connId > 0);
        client.setId(connId);

        assertEquals("UP", m.group(2));

        // step 2
        ChannelBuffer buf = client.send("hello");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        // step 3
        buf = client.send("World!");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < 500; ++i)
            sb.append('H');

        buf = client.send(sb.toString());

        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf.copy(0, 255), de.data);

        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        assertEquals(connId, de.whichClient);
        assertEquals(buf.copy(255, 245), de.data);

        // step 4
        client.disconnect();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        assertEquals(connId, Integer.parseInt(m.group(1)));
        assertEquals("DOWN", m.group(2));
View Full Code Here

        if (!queue.isEmpty())
            fail("EventQueue is not empty");
       
        MockClient client = god.newClient();
        Event ev = queue.take();
        DataEvent de = (DataEvent) ev;
        assertEquals(EventSource.kBackend, de.source);

        Matcher m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");
       
        int connId = Integer.parseInt(m.group(1));
        assertTrue(connId > 0);
        client.setId(connId);
       
        assertEquals("UP", m.group(2));
       
        client.disconnect();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");
       
        assertEquals(connId, Integer.parseInt(m.group(1)));
        assertEquals("DOWN", m.group(2));
View Full Code Here

            fail("EventQueue is not empty");

        // step 1
        final MockClient client1 = god.newClient();
        Event ev = queue.take();
        DataEvent de = (DataEvent) ev;
        assertEquals(EventSource.kBackend, de.source);

        Matcher m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        final int connId1 = Integer.parseInt(m.group(1));
        assertTrue(connId1 > 0);
        client1.setId(connId1);
        assertEquals("UP", m.group(2));

        // step 2
        final MockClient client2 = god.newClient();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);

        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");

        final int connId2 = Integer.parseInt(m.group(1));
        assertTrue(connId2 > 0);
        client2.setId(connId2);
        assertEquals("UP", m.group(2));

        ChannelBuffer buf = client1.send("hello");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        assertEquals(connId1, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        // step 3
        buf = backend.sendToClient(connId2, "World!");
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kClient, de.source);
        assertEquals(connId2, de.whichClient);
        assertEquals(buf, de.data);
        System.out.println(de.data.toString(Charset.defaultCharset()));

        // step 4
        client1.disconnect();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");
        assertEquals(connId1, Integer.parseInt(m.group(1)));
        assertEquals("DOWN", m.group(2));

        client2.disconnect();
        de = (DataEvent) queue.take();
        assertEquals(EventSource.kBackend, de.source);
        m = god.commandChannel.matcher(de.getString());
        if (!m.matches())
            fail("command channel message doesn't match.");
        assertEquals(connId2, Integer.parseInt(m.group(1)));
        assertEquals("DOWN", m.group(2));
View Full Code Here

TOP

Related Classes of com.chenshuo.muduo.example.multiplexer.DataEvent

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.