use of mockit.Mocked in project incubator-servicecomb-java-chassis by apache.
the class TestDefaultLogPublisher method onPolledEvent.
@Test
public void onPolledEvent(@Mocked VertxImplEx vertxImplEx) {
new Expectations(VertxUtils.class) {
{
VertxUtils.getVertxMap();
result = Collections.singletonMap("v", vertxImplEx);
vertxImplEx.getEventLoopContextCreatedCount();
result = 1;
}
};
DefaultPublishModel model = new DefaultPublishModel();
PerfInfo perfTotal = new PerfInfo();
perfTotal.setTps(10);
perfTotal.setMsTotalTime(100);
OperationPerf operationPerf = new OperationPerf();
operationPerf.setOperation("op");
operationPerf.getStages().put(MeterInvocationConst.STAGE_TOTAL, perfTotal);
operationPerf.getStages().put(MeterInvocationConst.STAGE_EXECUTOR_QUEUE, perfTotal);
operationPerf.getStages().put(MeterInvocationConst.STAGE_EXECUTION, perfTotal);
OperationPerfGroup operationPerfGroup = new OperationPerfGroup(Const.RESTFUL, Status.OK.name());
operationPerfGroup.addOperationPerf(operationPerf);
OperationPerfGroups operationPerfGroups = new OperationPerfGroups();
operationPerfGroups.getGroups().put(operationPerfGroup.getTransport(), Collections.singletonMap(operationPerfGroup.getStatus(), operationPerfGroup));
model.getConsumer().setOperationPerfGroups(operationPerfGroups);
model.getProducer().setOperationPerfGroups(operationPerfGroups);
new MockUp<PublishModelFactory>() {
@Mock
DefaultPublishModel createDefaultPublishModel() {
return model;
}
};
publisher.onPolledEvent(new PolledEvent(Collections.emptyList()));
List<LoggingEvent> events = collector.getEvents().stream().filter(e -> {
return DefaultLogPublisher.class.getName().equals(e.getLoggerName());
}).collect(Collectors.toList());
LoggingEvent event = events.get(0);
Assert.assertEquals("\n" + "vertx:\n" + " name eventLoopContext-created\n" + " v 1\n" + "consumer:\n" + " tps latency(ms) max-latency(ms) operation\n" + " rest.OK:\n" + " 10 10.000 0.000 op\n" + " 10 10.000 0.000 \n" + "producer:\n" + " tps latency(ms) max-latency(ms) queue(ms) max-queue(ms) execute(ms) max-execute(ms) operation\n" + " rest.OK:\n" + " 10 10.000 0.000 10.000 0.000 10.000 0.000 op\n" + " 10 10.000 0.000 10.000 0.000 10.000 0.000 \n" + "", event.getMessage());
}
use of mockit.Mocked in project java-chassis by ServiceComb.
the class TestAbstractRestInvocation method threadPoolReject.
@Test
public void threadPoolReject(@Mocked OperationMeta operationMeta) {
RejectedExecutionException rejectedExecutionException = new RejectedExecutionException("reject");
Executor executor = (task) -> {
throw rejectedExecutionException;
};
new Expectations() {
{
restOperation.getOperationMeta();
result = operationMeta;
operationMeta.getExecutor();
result = executor;
}
};
Holder<Throwable> holder = new Holder<>();
requestEx = new AbstractHttpServletRequestForTest();
restInvocation = new AbstractRestInvocationForTest() {
@Override
public void sendFailResponse(Throwable throwable) {
holder.value = throwable;
invocation.onFinish(Response.ok(null));
}
};
restInvocation.requestEx = requestEx;
restInvocation.restOperationMeta = restOperation;
restInvocation.scheduleInvocation();
Assert.assertSame(rejectedExecutionException, holder.value);
}
use of mockit.Mocked in project java-chassis by ServiceComb.
the class TestAbstractRestInvocation method doInvoke.
@Test
public void doInvoke(@Mocked Endpoint endpoint, @Mocked OperationMeta operationMeta, @Mocked Object[] swaggerArguments, @Mocked SchemaMeta schemaMeta) throws Throwable {
Response response = Response.ok("ok");
Handler handler = (invocation, asyncResp) -> asyncResp.complete(response);
List<Handler> handlerChain = Arrays.asList(handler);
Deencapsulation.setField(invocation, "handlerList", handlerChain);
Holder<Response> result = new Holder<>();
restInvocation = new AbstractRestInvocationForTest() {
@Override
protected void sendResponse(Response response) {
result.value = response;
}
};
restInvocation.invocation = invocation;
restInvocation.doInvoke();
Assert.assertSame(response, result.value);
assertEquals(nanoTime, invocation.getInvocationStageTrace().getStartHandlersRequest());
assertEquals(nanoTime, invocation.getInvocationStageTrace().getFinishHandlersResponse());
}
Aggregations