Search in sources :

Example 1 with TestPinpointClient

use of com.navercorp.pinpoint.test.client.TestPinpointClient in project pinpoint by naver.

the class StreamChannelManagerTest method streamClosedTest3.

// ServerSocket to Client Stream
// ServerStreamChannel first close.
@Test(expected = PinpointSocketException.class)
public void streamClosedTest3() throws IOException, InterruptedException, StreamException {
    TestPinpointServerAcceptor testPinpointServerAcceptor = new TestPinpointServerAcceptor(testServerMessageListenerFactory);
    int bindPort = testPinpointServerAcceptor.bind();
    SimpleStreamBO bo = new SimpleStreamBO();
    ServerListener serverStreamChannelMessageHandler = new ServerListener(bo);
    TestPinpointClient testPinpointClient = new TestPinpointClient(SimpleMessageListener.INSTANCE, serverStreamChannelMessageHandler);
    testPinpointClient.connect(bindPort);
    try {
        testPinpointServerAcceptor.assertAwaitClientConnected(1000);
        List<PinpointSocket> writableServerList = testPinpointServerAcceptor.getConnectedPinpointSocketList();
        Assert.assertEquals(1, writableServerList.size());
        PinpointSocket writableServer = writableServerList.get(0);
        if (writableServer instanceof PinpointServer) {
            RecordedStreamChannelMessageListener clientListener = new RecordedStreamChannelMessageListener(4);
            ClientStreamChannel clientStreamChannel = ((PinpointServer) writableServer).openStreamAndAwait(new byte[0], clientListener, 3000);
            StreamChannel streamChannel = serverStreamChannelMessageHandler.bo.serverStreamChannelList.get(0);
            streamChannel.close();
            sendRandomBytes(bo);
            Thread.sleep(100);
            clientStreamChannel.close();
        } else {
            Assert.fail();
        }
    } finally {
        testPinpointClient.closeAll();
        testPinpointServerAcceptor.close();
    }
}
Also used : TestPinpointServerAcceptor(com.navercorp.pinpoint.test.server.TestPinpointServerAcceptor) TestPinpointClient(com.navercorp.pinpoint.test.client.TestPinpointClient) PinpointSocket(com.navercorp.pinpoint.rpc.PinpointSocket) RecordedStreamChannelMessageListener(com.navercorp.pinpoint.rpc.RecordedStreamChannelMessageListener) PinpointServer(com.navercorp.pinpoint.rpc.server.PinpointServer) Test(org.junit.Test)

Example 2 with TestPinpointClient

use of com.navercorp.pinpoint.test.client.TestPinpointClient in project pinpoint by naver.

the class StreamChannelManagerTest method streamSuccessTest3.

@Test
public void streamSuccessTest3() throws IOException, InterruptedException, StreamException {
    TestPinpointServerAcceptor testPinpointServerAcceptor = new TestPinpointServerAcceptor(testServerMessageListenerFactory);
    int bindPort = testPinpointServerAcceptor.bind();
    SimpleStreamBO bo = new SimpleStreamBO();
    TestPinpointClient testPinpointClient = new TestPinpointClient(SimpleMessageListener.INSTANCE, new ServerListener(bo));
    try {
        testPinpointClient.connect(bindPort);
        testPinpointServerAcceptor.assertAwaitClientConnected(1000);
        List<PinpointSocket> writableServerList = testPinpointServerAcceptor.getConnectedPinpointSocketList();
        Assert.assertEquals(1, writableServerList.size());
        PinpointSocket writableServer = writableServerList.get(0);
        RecordedStreamChannelMessageListener clientListener = new RecordedStreamChannelMessageListener(4);
        if (writableServer instanceof PinpointServer) {
            ClientStreamChannel clientStreamChannel = ((PinpointServer) writableServer).openStreamAndAwait(new byte[0], clientListener, 3000);
            int sendCount = 4;
            for (int i = 0; i < sendCount; i++) {
                sendRandomBytes(bo);
            }
            clientListener.getLatch().await();
            Assert.assertEquals(sendCount, clientListener.getReceivedMessage().size());
            clientStreamChannel.close();
        } else {
            Assert.fail();
        }
    } finally {
        testPinpointClient.closeAll();
        testPinpointServerAcceptor.close();
    }
}
Also used : TestPinpointServerAcceptor(com.navercorp.pinpoint.test.server.TestPinpointServerAcceptor) TestPinpointClient(com.navercorp.pinpoint.test.client.TestPinpointClient) PinpointSocket(com.navercorp.pinpoint.rpc.PinpointSocket) RecordedStreamChannelMessageListener(com.navercorp.pinpoint.rpc.RecordedStreamChannelMessageListener) PinpointServer(com.navercorp.pinpoint.rpc.server.PinpointServer) Test(org.junit.Test)

Example 3 with TestPinpointClient

use of com.navercorp.pinpoint.test.client.TestPinpointClient in project pinpoint by naver.

the class StreamChannelManagerTest method streamSuccessTest1.

// Client to Server Stream
@Test
public void streamSuccessTest1() throws IOException, InterruptedException, StreamException {
    SimpleStreamBO bo = new SimpleStreamBO();
    TestPinpointServerAcceptor testPinpointServerAcceptor = new TestPinpointServerAcceptor(testServerMessageListenerFactory, new ServerListener(bo));
    int bindPort = testPinpointServerAcceptor.bind();
    TestPinpointClient testPinpointClient = new TestPinpointClient();
    try {
        testPinpointClient.connect(bindPort);
        RecordedStreamChannelMessageListener clientListener = new RecordedStreamChannelMessageListener(4);
        ClientStreamChannel clientStreamChannel = testPinpointClient.openStream(new byte[0], clientListener);
        int sendCount = 4;
        for (int i = 0; i < sendCount; i++) {
            sendRandomBytes(bo);
        }
        clientListener.getLatch().await();
        Assert.assertEquals(sendCount, clientListener.getReceivedMessage().size());
        clientStreamChannel.close();
    } finally {
        testPinpointClient.closeAll();
        testPinpointServerAcceptor.close();
    }
}
Also used : TestPinpointServerAcceptor(com.navercorp.pinpoint.test.server.TestPinpointServerAcceptor) TestPinpointClient(com.navercorp.pinpoint.test.client.TestPinpointClient) RecordedStreamChannelMessageListener(com.navercorp.pinpoint.rpc.RecordedStreamChannelMessageListener) Test(org.junit.Test)

Example 4 with TestPinpointClient

use of com.navercorp.pinpoint.test.client.TestPinpointClient in project pinpoint by naver.

the class StreamChannelManagerTest method streamClosedTest2.

@Test
public void streamClosedTest2() throws IOException, InterruptedException, StreamException {
    final SimpleStreamBO bo = new SimpleStreamBO();
    TestPinpointServerAcceptor testPinpointServerAcceptor = new TestPinpointServerAcceptor(testServerMessageListenerFactory, new ServerListener(bo));
    int bindPort = testPinpointServerAcceptor.bind();
    TestPinpointClient testPinpointClient = new TestPinpointClient();
    try {
        testPinpointClient.connect(bindPort);
        RecordedStreamChannelMessageListener clientListener = new RecordedStreamChannelMessageListener(4);
        ClientStreamChannel clientStreamChannel = testPinpointClient.openStream(new byte[0], clientListener);
        Assert.assertEquals(1, bo.getStreamChannelContextSize());
        clientStreamChannel.close();
        Awaitility.await().until(new Callable<Integer>() {

            @Override
            public Integer call() throws Exception {
                return bo.getStreamChannelContextSize();
            }
        }, is(0));
        Assert.assertEquals(0, bo.getStreamChannelContextSize());
    } finally {
        testPinpointClient.closeAll();
        testPinpointServerAcceptor.close();
    }
}
Also used : TestPinpointServerAcceptor(com.navercorp.pinpoint.test.server.TestPinpointServerAcceptor) TestPinpointClient(com.navercorp.pinpoint.test.client.TestPinpointClient) RecordedStreamChannelMessageListener(com.navercorp.pinpoint.rpc.RecordedStreamChannelMessageListener) IOException(java.io.IOException) PinpointSocketException(com.navercorp.pinpoint.rpc.PinpointSocketException) Test(org.junit.Test)

Example 5 with TestPinpointClient

use of com.navercorp.pinpoint.test.client.TestPinpointClient in project pinpoint by naver.

the class StreamChannelManagerTest method streamClosedTest1.

@Test(expected = StreamException.class)
public void streamClosedTest1() throws IOException, InterruptedException, StreamException {
    TestPinpointServerAcceptor testPinpointServerAcceptor = new TestPinpointServerAcceptor(testServerMessageListenerFactory);
    int bindPort = testPinpointServerAcceptor.bind();
    TestPinpointClient testPinpointClient = new TestPinpointClient();
    try {
        testPinpointClient.connect(bindPort);
        RecordedStreamChannelMessageListener clientListener = new RecordedStreamChannelMessageListener(4);
        testPinpointClient.openStream(new byte[0], clientListener);
    } finally {
        testPinpointClient.closeAll();
        testPinpointServerAcceptor.close();
    }
}
Also used : TestPinpointServerAcceptor(com.navercorp.pinpoint.test.server.TestPinpointServerAcceptor) TestPinpointClient(com.navercorp.pinpoint.test.client.TestPinpointClient) RecordedStreamChannelMessageListener(com.navercorp.pinpoint.rpc.RecordedStreamChannelMessageListener) Test(org.junit.Test)

Aggregations

TestPinpointClient (com.navercorp.pinpoint.test.client.TestPinpointClient)14 Test (org.junit.Test)14 TestPinpointServerAcceptor (com.navercorp.pinpoint.test.server.TestPinpointServerAcceptor)13 PinpointSocket (com.navercorp.pinpoint.rpc.PinpointSocket)8 RecordedStreamChannelMessageListener (com.navercorp.pinpoint.rpc.RecordedStreamChannelMessageListener)6 PinpointServer (com.navercorp.pinpoint.rpc.server.PinpointServer)2 PinpointSocketException (com.navercorp.pinpoint.rpc.PinpointSocketException)1 EchoClientListener (com.navercorp.pinpoint.rpc.util.PinpointRPCTestUtils.EchoClientListener)1 TestServerMessageListenerFactory (com.navercorp.pinpoint.test.server.TestServerMessageListenerFactory)1 IOException (java.io.IOException)1 ZooKeeper (org.apache.zookeeper.ZooKeeper)1