package com.easemob.tsdb.thrift.rpc; import com.easemob.tsdb.thrift.models.TSData; import com.easemob.tsdb.thrift.models.ThriftTsdbRpcService; import org.apache.thrift.TException; import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TProtocol; import org.apache.thrift.transport.TFramedTransport; import org.apache.thrift.transport.TSocket; import org.apache.thrift.transport.TTransport; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * @author stliu <stliu@apache.org> * @date 3/11/15 */ public class ThriftTSDBRpcPluginTest implements Constants { private static final Logger logger = LoggerFactory.getLogger(ThriftTSDBRpcPluginTest.class); MockTSDB tsdb = new MockTSDB(); ThriftTSDBRpcPlugin rpcServer; ThriftTsdbRpcService.Client client; TTransport transport; @Before public void setUp() throws Exception { rpcServer = new ThriftTSDBRpcPlugin(); rpcServer.internalInitialize(tsdb); long time = 10* 1000; logger.info("Waiting "+time+" ms for server startup"); Thread.sleep(time); logger.info("now starting client to connect to server"); transport = new TSocket("127.0.0.1", PLUGIN_THRIFT_PORT_DEFAULT); System.out.println("-------"); transport = new TFramedTransport.Factory().getTransport(transport); System.out.println("@##@#@#"); transport.open(); System.out.println("22222222"); TProtocol protocol = new TBinaryProtocol(transport); client = new ThriftTsdbRpcService.Client(protocol); } @Test public void testSendMetrics() throws TException { TSData tsData = new TSData(); tsData.setName("m1"); tsData.setTimestamp(new Date().getTime()); tsData.setValue(1); Map<String, String> tags = new HashMap<>(); tags.put("t1", "v1"); tsData.setTags(tags); System.out.println("3333333"); client.putTSData(tsData); } @After public void tearDown() throws Exception { transport.close(); rpcServer.shutdown(); } }