This is an automated email from the ASF dual-hosted git repository. liubao pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git
commit 2573778d610e7633184fe379af8d02edd9a537c1 Author: liubao <[email protected]> AuthorDate: Wed Jan 22 14:39:39 2020 +0800 [SCB-1734]add a test case for bean with aXXX property and some refactoring --- .../org/apache/servicecomb/core/Invocation.java | 3 +- .../servicecomb/demo/model/SpecialNameModel.java | 22 ++- .../apache/servicecomb/demo/tccserver/TestTcc.java | 27 --- .../demo/springmvc/client/TestWeakSpringmvc.java | 25 ++- .../demo/springmvc/server/WeakSpringmvc.java | 7 + .../foundation/protobuf/ProtoMapperFactory.java | 1 - .../transport/highway/HighwayCodec.java | 2 +- .../transport/highway/HighwayOutputStream.java | 24 ++- .../transport/highway/message/LoginRequest.java | 5 +- .../transport/highway/message/LoginResponse.java | 4 +- .../transport/highway/message/RequestHeader.java | 9 +- .../transport/highway/message/ResponseHeader.java | 5 +- .../highway/TestHighwayServerConnection.java | 193 --------------------- 13 files changed, 62 insertions(+), 265 deletions(-) diff --git a/core/src/main/java/org/apache/servicecomb/core/Invocation.java b/core/src/main/java/org/apache/servicecomb/core/Invocation.java index 6b81b9a..552d3b9 100644 --- a/core/src/main/java/org/apache/servicecomb/core/Invocation.java +++ b/core/src/main/java/org/apache/servicecomb/core/Invocation.java @@ -250,8 +250,7 @@ public class Invocation extends SwaggerInvocation { this.invocationArguments = swaggerArguments; } } - - // TODO: WEAK add release notes to tell this change in 2.0.0 + public Object[] toProducerArguments() { Method method = operationMeta.getSwaggerProducerOperation().getProducerMethod(); Object[] args = new Object[method.getParameterCount()]; diff --git a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayServerInvoke.java b/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/model/SpecialNameModel.java similarity index 60% rename from transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayServerInvoke.java rename to demo/demo-schema/src/main/java/org/apache/servicecomb/demo/model/SpecialNameModel.java index e2f2547..dfacc03 100644 --- a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayServerInvoke.java +++ b/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/model/SpecialNameModel.java @@ -15,18 +15,22 @@ * limitations under the License. */ -package org.apache.servicecomb.transport.highway; +package org.apache.servicecomb.demo.model; -import org.junit.Test; +import com.fasterxml.jackson.annotation.JsonProperty; -public class TestHighwayServerInvoke { - @Test - public void test() { - // TODO: add an integration tests to test metrics for highway works +public class SpecialNameModel { + // names starts with only one lower case , although getter/setter generated by IDE is correct, + // will cause jackson generate incorrect swagger names. + // @JsonProperty must be used to make json work in a predictable way. + @JsonProperty("aIntName") + private int aIntName; + + public int getaIntName() { + return aIntName; } - @Test - public void testFlowControlQps() { - // TODO : add an integration tests to test flow control for higwway works + public void setaIntName(int aIntName) { + this.aIntName = aIntName; } } diff --git a/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/tccserver/TestTcc.java b/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/tccserver/TestTcc.java deleted file mode 100644 index be5f1df..0000000 --- a/demo/demo-schema/src/main/java/org/apache/servicecomb/demo/tccserver/TestTcc.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.servicecomb.demo.tccserver; - -import org.apache.servicecomb.demo.server.TestRequest; -import org.apache.servicecomb.demo.server.User; - -public interface TestTcc { - User wrapParam(TestRequest request); - - User splitParam(int index, User user); -} diff --git a/demo/demo-springmvc/springmvc-client/src/main/java/org/apache/servicecomb/demo/springmvc/client/TestWeakSpringmvc.java b/demo/demo-springmvc/springmvc-client/src/main/java/org/apache/servicecomb/demo/springmvc/client/TestWeakSpringmvc.java index 36d4c91..a2f9817 100644 --- a/demo/demo-springmvc/springmvc-client/src/main/java/org/apache/servicecomb/demo/springmvc/client/TestWeakSpringmvc.java +++ b/demo/demo-springmvc/springmvc-client/src/main/java/org/apache/servicecomb/demo/springmvc/client/TestWeakSpringmvc.java @@ -25,6 +25,7 @@ import java.util.Map; import org.apache.servicecomb.core.provider.consumer.InvokerUtils; import org.apache.servicecomb.demo.CategorizedTestCase; import org.apache.servicecomb.demo.TestMgr; +import org.apache.servicecomb.demo.model.SpecialNameModel; import org.apache.servicecomb.demo.server.GenericsModel; import org.apache.servicecomb.foundation.common.utils.JsonUtils; import org.apache.servicecomb.provider.pojo.RpcReference; @@ -89,6 +90,10 @@ interface GenericsModelInf { GenericsModel genericParamsModel(int code, GenericsModel model); } +interface SpecialNameModelInf { + SpecialNameModel specialNameModel(int code, SpecialNameModel model); +} + @Component public class TestWeakSpringmvc implements CategorizedTestCase { @RpcReference(microserviceName = "springmvc", schemaId = "weakSpringmvc") @@ -103,6 +108,9 @@ public class TestWeakSpringmvc implements CategorizedTestCase { @RpcReference(microserviceName = "springmvc", schemaId = "weakSpringmvc") private GenericsModelInf genericsModelInf; + @RpcReference(microserviceName = "springmvc", schemaId = "weakSpringmvc") + private SpecialNameModelInf specialNameModelInf; + private RestTemplate restTemplate = RestTemplateBuilder.create(); @Override @@ -117,14 +125,23 @@ public class TestWeakSpringmvc implements CategorizedTestCase { @Override public void testAllTransport() throws Exception { - getDiffName(); + testDiffName(); testGenerics(); - getGenericsModel(); + testGenericsModel(); + + testSpecailNameModel(); + } + + private void testSpecailNameModel() { + SpecialNameModel model = new SpecialNameModel(); + model.setaIntName(30); + SpecialNameModel result = specialNameModelInf.specialNameModel(0, model); + TestMgr.check(30, result.getaIntName()); } - private void getGenericsModel() throws JsonProcessingException { + private void testGenericsModel() throws JsonProcessingException { GenericsModel model = new GenericsModel(); model.setName("model"); List<List<String>> namesList = new ArrayList<>(); @@ -154,7 +171,7 @@ public class TestWeakSpringmvc implements CategorizedTestCase { TestMgr.check("hello", nameListResult.get(0).get(0)); } - private void getDiffName() { + private void testDiffName() { TestMgr.check(7, diffNames.differentName(2, 3)); TestMgr.check(8, diffNames2.differentName(2, 3)); TestMgr.check(7, restTemplate.getForObject("cse://springmvc/weakSpringmvc/diffNames?x=2&y=3", Integer.class)); diff --git a/demo/demo-springmvc/springmvc-server/src/main/java/org/apache/servicecomb/demo/springmvc/server/WeakSpringmvc.java b/demo/demo-springmvc/springmvc-server/src/main/java/org/apache/servicecomb/demo/springmvc/server/WeakSpringmvc.java index 2777572..bb75d6a 100644 --- a/demo/demo-springmvc/springmvc-server/src/main/java/org/apache/servicecomb/demo/springmvc/server/WeakSpringmvc.java +++ b/demo/demo-springmvc/springmvc-server/src/main/java/org/apache/servicecomb/demo/springmvc/server/WeakSpringmvc.java @@ -19,6 +19,7 @@ package org.apache.servicecomb.demo.springmvc.server; import java.util.List; +import org.apache.servicecomb.demo.model.SpecialNameModel; import org.apache.servicecomb.demo.server.GenericsModel; import org.apache.servicecomb.provider.rest.common.RestSchema; import org.springframework.http.MediaType; @@ -49,4 +50,10 @@ public class WeakSpringmvc { public GenericsModel genericParamsModel(@RequestParam("code") int code, @RequestBody GenericsModel model) { return model; } + + @GetMapping(path = "/specialNameModel") + @ApiOperation(value = "specialNameModel", nickname = "specialNameModel") + public SpecialNameModel specialNameModel(@RequestParam("code") int code, @RequestBody SpecialNameModel model) { + return model; + } } diff --git a/foundations/foundation-protobuf/src/main/java/org/apache/servicecomb/foundation/protobuf/ProtoMapperFactory.java b/foundations/foundation-protobuf/src/main/java/org/apache/servicecomb/foundation/protobuf/ProtoMapperFactory.java index f1b6774..15cf994 100644 --- a/foundations/foundation-protobuf/src/main/java/org/apache/servicecomb/foundation/protobuf/ProtoMapperFactory.java +++ b/foundations/foundation-protobuf/src/main/java/org/apache/servicecomb/foundation/protobuf/ProtoMapperFactory.java @@ -37,7 +37,6 @@ public class ProtoMapperFactory { public ProtoMapperFactory() { jsonMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); jsonMapper.setSerializationInclusion(Include.NON_NULL); -// jsonMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.OBJECT_AND_NON_CONCRETE, JsonTypeInfo.As.PROPERTY); beanDescriptorManager = new BeanDescriptorManager(jsonMapper.getSerializationConfig()); } diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayCodec.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayCodec.java index bb28651..61423f2 100644 --- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayCodec.java +++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayCodec.java @@ -68,7 +68,7 @@ public final class HighwayCodec { List<Parameter> swaggerParameters = operationMeta.getSwaggerOperation() .getParameters(); for (Parameter parameter : swaggerParameters) { - if (!parameter.getRequired() && swaggerArguments.get(parameter.getName()) == null) { + if (swaggerArguments.get(parameter.getName()) == null) { Type type = swaggerProducerOperation.getSwaggerParameterType(parameter.getName()); if (type instanceof Class) { if (((Class) type).isPrimitive()) { diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayOutputStream.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayOutputStream.java index 3eac978..b0eb3e8 100644 --- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayOutputStream.java +++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayOutputStream.java @@ -32,32 +32,30 @@ public class HighwayOutputStream extends TcpOutputStream { write(RequestHeader.getRootSerializer().serialize(header), requestRootSerializer.serialize(body)); } - public void write(ResponseHeader header, ResponseRootSerializer responseRootSerializer, Object body) throws Exception { + public void write(ResponseHeader header, ResponseRootSerializer responseRootSerializer, Object body) + throws Exception { write(ResponseHeader.getRootSerializer().serialize(header), responseRootSerializer.serialize(body)); } - public void write(RequestHeader header, RootSerializer bodySchema, Object body) throws Exception { - write(RequestHeader.getRootSerializer(), header, bodySchema, body); + public void write(RequestHeader header, RootSerializer bodySerializer, Object body) throws Exception { + write(RequestHeader.getRootSerializer(), header, bodySerializer, body); } - public void write(ResponseHeader header, RootSerializer bodySchema, Object body) throws Exception { - write(ResponseHeader.getRootSerializer(), header, bodySchema, body); + public void write(ResponseHeader header, RootSerializer bodySerializer, Object body) throws Exception { + write(ResponseHeader.getRootSerializer(), header, bodySerializer, body); } - public void write(RootSerializer headerSchema, Object header, RootSerializer bodySchema, Object body) + public void write(RootSerializer headerSerializer, Object header, RootSerializer bodySerializer, Object body) throws Exception { byte[] headerBytes = new byte[0]; byte[] bodyBytes = new byte[0]; - // 写header - if (headerSchema != null) { - headerBytes = headerSchema.serialize(header); + if (headerSerializer != null) { + headerBytes = headerSerializer.serialize(header); } - // 写body - // void时bodySchema为null - if (bodySchema != null) { - bodyBytes = bodySchema.serialize(body); + if (bodySerializer != null) { + bodyBytes = bodySerializer.serialize(body); } write(headerBytes, bodyBytes); diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginRequest.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginRequest.java index 191153e..c462b52 100644 --- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginRequest.java +++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginRequest.java @@ -23,10 +23,10 @@ import org.apache.servicecomb.foundation.protobuf.RootSerializer; import io.vertx.core.buffer.Buffer; public class LoginRequest { - // TODO : WEAK refactor reuse private static ProtoMapperFactory protoMapperFactory = new ProtoMapperFactory(); - private static RootDeserializer<LoginRequest> rootDeserializer = protoMapperFactory.createFromName("LoginRequest.proto") + private static RootDeserializer<LoginRequest> rootDeserializer = protoMapperFactory + .createFromName("LoginRequest.proto") .createRootDeserializer("LoginRequest", LoginRequest.class); private static RootSerializer rootSerializer = protoMapperFactory.createFromName("LoginRequest.proto") @@ -60,5 +60,4 @@ public class LoginRequest { public void setZipName(String zipName) { this.zipName = zipName; } - } diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginResponse.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginResponse.java index a27fc7d..b084f8a 100644 --- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginResponse.java +++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/LoginResponse.java @@ -23,10 +23,10 @@ import org.apache.servicecomb.foundation.protobuf.RootSerializer; import io.vertx.core.buffer.Buffer; public class LoginResponse { - // TODO : WEAK refactor reuse private static ProtoMapperFactory protoMapperFactory = new ProtoMapperFactory(); - private static RootDeserializer<LoginResponse> rootDeserializer = protoMapperFactory.createFromName("LoginResponse.proto") + private static RootDeserializer<LoginResponse> rootDeserializer = protoMapperFactory + .createFromName("LoginResponse.proto") .createRootDeserializer("LoginResponse", LoginResponse.class); private static RootSerializer rootSerializer = protoMapperFactory.createFromName("LoginResponse.proto") diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/RequestHeader.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/RequestHeader.java index 1835e25..e334ccb 100644 --- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/RequestHeader.java +++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/RequestHeader.java @@ -25,15 +25,11 @@ import org.apache.servicecomb.foundation.protobuf.RootSerializer; import io.vertx.core.buffer.Buffer; -/** - * tag的缺失、乱序,是因为要兼容历史版本 - * 1.tag(4),是历史版本中的压缩算法名,转移到login消息中传递 - */ public class RequestHeader { - // TODO : WEAK refactor reuse private static ProtoMapperFactory protoMapperFactory = new ProtoMapperFactory(); - private static RootDeserializer<RequestHeader> rootDeserializer = protoMapperFactory.createFromName("RequestHeader.proto") + private static RootDeserializer<RequestHeader> rootDeserializer = protoMapperFactory + .createFromName("RequestHeader.proto") .createRootDeserializer("RequestHeader", RequestHeader.class); private static RootSerializer rootSerializer = protoMapperFactory.createFromName("RequestHeader.proto") @@ -61,7 +57,6 @@ public class RequestHeader { private Map<String, String> context; - //CHECKSTYLE:ON public int getMsgType() { return msgType; } diff --git a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/ResponseHeader.java b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/ResponseHeader.java index 262ac71..65488c2 100644 --- a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/ResponseHeader.java +++ b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/message/ResponseHeader.java @@ -27,10 +27,10 @@ import org.apache.servicecomb.swagger.invocation.response.Headers; import io.vertx.core.buffer.Buffer; public class ResponseHeader { - // TODO : refactor reuse private static ProtoMapperFactory protoMapperFactory = new ProtoMapperFactory(); - private static RootDeserializer<ResponseHeader> rootDeserializer = protoMapperFactory.createFromName("ResponseHeader.proto") + private static RootDeserializer<ResponseHeader> rootDeserializer = protoMapperFactory + .createFromName("ResponseHeader.proto") .createRootDeserializer("ResponseHeader", ResponseHeader.class); private static RootSerializer rootSerializer = protoMapperFactory.createFromName("ResponseHeader.proto") @@ -64,7 +64,6 @@ public class ResponseHeader { this.flags = flags; } - //CHECKSTYLE:ON: magicnumber public int getStatusCode() { return statusCode; } diff --git a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayServerConnection.java b/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayServerConnection.java deleted file mode 100644 index d8ed159..0000000 --- a/transports/transport-highway/src/test/java/org/apache/servicecomb/transport/highway/TestHighwayServerConnection.java +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.servicecomb.transport.highway; - -public class TestHighwayServerConnection { - // TODO : WK unit test -// private static WrapSchema requestHeaderSchema = -// ScopedProtobufSchemaManager.INSTANCE.getOrCreateSchema(RequestHeader.class); -// -// private static WrapSchema setParameterRequestSchema = -// ScopedProtobufSchemaManager.INSTANCE.getOrCreateSchema(LoginRequest.class); -// -// HighwayServerConnection connection; -// -// @Mocked -// Endpoint endpoint; -// -// @Mocked -// NetSocketImpl netSocket; -// -// RequestHeader header = new RequestHeader(); -// -// @Before -// public void init() { -// new Expectations() { -// { -// netSocket.remoteAddress(); -// result = new SocketAddressImpl(new InetSocketAddress("127.0.0.1", 80)); -// } -// }; -// connection = new HighwayServerConnection(endpoint); -// connection.init(netSocket); -// -// header = new RequestHeader(); -// } -// -// @Test -// public void testInvalidMsgType() throws Exception { -// header.setMsgType((byte) 100); -// Buffer headerBuffer = createBuffer(requestHeaderSchema, header); -// -// try { -// connection.handle(0, headerBuffer, null); -// throw new Error("must error"); -// } catch (Throwable e) { -// Assert.assertEquals("Unknown tcp msgType 100", e.getMessage()); -// } -// } -// -// @Test -// public void testReqeustHeaderError() throws Exception { -// header.setMsgType(MsgType.LOGIN); -// Buffer headerBuffer = createBuffer(requestHeaderSchema, header); -// -// headerBuffer.setByte(0, (byte) 100); -// -// connection.handle(0, headerBuffer, null); -// -// Assert.assertEquals(null, connection.getProtocol()); -// Assert.assertEquals(null, connection.getZipName()); -// } -// -// @Test -// public void testSetParameterNormal() throws Exception { -// header.setMsgType(MsgType.LOGIN); -// Buffer headerBuffer = createBuffer(requestHeaderSchema, header); -// -// LoginRequest body = new LoginRequest(); -// body.setProtocol("p"); -// body.setZipName("z"); -// Buffer bodyBuffer = createBuffer(setParameterRequestSchema, body); -// -// connection.handle(0, headerBuffer, bodyBuffer); -// -// Assert.assertEquals("p", connection.getProtocol()); -// Assert.assertEquals("z", connection.getZipName()); -// } -// -// @Test -// public void testSetParameterError() throws Exception { -// header.setMsgType(MsgType.LOGIN); -// Buffer headerBuffer = createBuffer(requestHeaderSchema, header); -// -// LoginRequest body = new LoginRequest(); -// body.setProtocol("p"); -// body.setZipName("z"); -// Buffer bodyBuffer = createBuffer(setParameterRequestSchema, body); -// bodyBuffer.setByte(0, (byte) 100); -// -// connection.handle(0, headerBuffer, bodyBuffer); -// -// Assert.assertEquals(null, connection.getProtocol()); -// Assert.assertEquals(null, connection.getZipName()); -// } -// -// @Test -// public void testRequestNormal(@Mocked MicroserviceMeta microserviceMeta, @Mocked OperationMeta operationMeta, -// @Mocked SchemaMeta schemaMeta) throws Exception { -// header.setMsgType(MsgType.REQUEST); -// Buffer headerBuffer = createBuffer(requestHeaderSchema, header); -// -// Buffer bodyBuffer = Buffer.buffer(); -// new Expectations(SCBEngine.class) { -// { -// SCBEngine.getInstance().getProducerMicroserviceMeta(); -// result = microserviceMeta; -// } -// }; -// new Expectations() { -// { -// microserviceMeta.ensureFindSchemaMeta(header.getSchemaId()); -// result = schemaMeta; -// } -// }; -// -// new Expectations(ProtobufManager.class) { -// { -// ProtobufManager.getOrCreateOperation(operationMeta); -// result = null; -// } -// }; -// -// Holder<Boolean> holder = new Holder<>(); -// new MockUp<HighwayServerInvoke>() { -// @Mock -// public boolean init(NetSocket netSocket, long msgId, -// RequestHeader header, Buffer bodyBuffer) { -// return true; -// } -// -// @Mock -// public void execute() { -// holder.value = true; -// } -// }; -// -// connection.handle(0, headerBuffer, bodyBuffer); -// -// Assert.assertEquals(null, connection.getProtocol()); -// Assert.assertEquals(null, connection.getZipName()); -// Assert.assertEquals(true, holder.value); -// } -// -// @Test -// public void testRequestError() throws Exception { -// header.setMsgType(MsgType.REQUEST); -// Buffer headerBuffer = createBuffer(requestHeaderSchema, header); -// -// Buffer bodyBuffer = Buffer.buffer(); -// -// Holder<Boolean> holder = new Holder<>(false); -// new MockUp<HighwayServerInvoke>() { -// @Mock -// public boolean init(NetSocket netSocket, long msgId, -// RequestHeader header, Buffer bodyBuffer) { -// return false; -// } -// }; -// -// connection.handle(0, headerBuffer, bodyBuffer); -// -// Assert.assertEquals(null, connection.getProtocol()); -// Assert.assertEquals(null, connection.getZipName()); -// Assert.assertEquals(false, holder.value); -// } -// -// protected Buffer createBuffer(WrapSchema schema, Object value) throws Exception { -// Buffer headerBuffer; -// LinkedBuffer linkedBuffer = LinkedBuffer.allocate(); -// ProtobufOutput output = new ProtobufOutput(linkedBuffer); -// schema.writeObject(output, value); -// try (BufferOutputStream os = new BufferOutputStream()) { -// LinkedBuffer.writeTo(os, linkedBuffer); -// -// headerBuffer = os.getBuffer(); -// } -// return headerBuffer; -// } -}
