did/did-sdk/src/test/java/io/github/ehlxr/did/DidSdkTest.java

60 lines
1.6 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package io.github.ehlxr.did;
import io.github.ehlxr.did.client.SdkClient;
import io.github.ehlxr.did.common.SdkProto;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
/**
* @author ehlxr
*/
public class DidSdkTest {
private static final int NUM = 10;
SdkClient client;
@Before
public void init() {
client = new SdkClient("127.0.0.1", 16831, 5000);
client.start();
}
@After
public void destroy() {
client.shutdown();
}
@Test
public void didSdkTest() throws Exception {
// 测试同步请求关注rqid是否对应
for (int i = 0; i < NUM; i++) {
SdkProto resultProto = client.invokeSync();
System.out.println(i + " resultProto: " + resultProto);
}
System.out.println("invokeync test finish");
// 测试异步请求关注rqid是否对应
final CountDownLatch countDownLatch = new CountDownLatch(NUM);
for (int i = 0; i < NUM; i++) {
final int finalI = i;
client.invokeAsync(responseFuture -> {
countDownLatch.countDown();
System.out.println(finalI + " resultProto: " + responseFuture.getSdkProto());
});
}
countDownLatch.await(10, TimeUnit.SECONDS);
System.out.println("invokeAsync test finish");
}
@Test
public void testInvoke() throws Exception {
System.out.println(client.invoke());
client.setTimeoutMillis(3000);
System.out.println(client.invoke());
}
}