This is an automated email from the ASF dual-hosted git repository.

albumenj pushed a commit to branch 3.2
in repository https://gitbox.apache.org/repos/asf/dubbo.git


The following commit(s) were added to refs/heads/3.2 by this push:
     new b41fe3ca35 Optimize MethodConfigTest (#13234)
b41fe3ca35 is described below

commit b41fe3ca355f06281efdb396a5a527e3f74a687d
Author: Linchen Xu <[email protected]>
AuthorDate: Fri Oct 20 15:41:31 2023 +0800

    Optimize MethodConfigTest (#13234)
---
 .../org/apache/dubbo/config/MethodConfigTest.java  | 39 +++++++------
 .../org/apache/dubbo/config/MethodConfigTest.java  | 65 ++++++++++++++--------
 .../org/apache/dubbo/config/common/Person.java     | 44 +++++++++++++++
 3 files changed, 110 insertions(+), 38 deletions(-)

diff --git 
a/dubbo-compatible/src/test/java/org/apache/dubbo/config/MethodConfigTest.java 
b/dubbo-compatible/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
index d2d15cb1cc..f53106d793 100644
--- 
a/dubbo-compatible/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
+++ 
b/dubbo-compatible/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
@@ -107,24 +107,31 @@ class MethodConfigTest {
     }
 
     @Test
-    void testConvertMethodConfig2AsyncInfo() throws Exception{
-        org.apache.dubbo.config.MethodConfig methodConfig = new 
org.apache.dubbo.config.MethodConfig();
-        methodConfig.setOninvokeMethod("setName");
+    void testConvertMethodConfig2AsyncInfo() throws Exception {
+        MethodConfig methodConfig = new MethodConfig();
+        String methodName = "setName";
+        methodConfig.setOninvokeMethod(methodName);
+        methodConfig.setOnthrowMethod(methodName);
+        methodConfig.setOnreturnMethod(methodName);
         methodConfig.setOninvoke(new Person());
+        methodConfig.setOnthrow(new Person());
+        methodConfig.setOnreturn(new Person());
 
         AsyncMethodInfo methodInfo = 
methodConfig.convertMethodConfig2AsyncInfo();
 
-        assertEquals(methodInfo.getOninvokeMethod(), 
Person.class.getMethod("setName", String.class));
+        assertEquals(methodInfo.getOninvokeMethod(), 
Person.class.getMethod(methodName, String.class));
+        assertEquals(methodInfo.getOnthrowMethod(), 
Person.class.getMethod(methodName, String.class));
+        assertEquals(methodInfo.getOnreturnMethod(), 
Person.class.getMethod(methodName, String.class));
     }
 
     //@Test
-    public void testOnreturn() {
+    void testOnreturn() {
         MethodConfig method = new MethodConfig();
         method.setOnreturn("on-return-object");
-        assertThat(method.getOnreturn(), equalTo((Object) "on-return-object"));
+        assertThat(method.getOnreturn(), equalTo("on-return-object"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_RETURN_INSTANCE_ATTRIBUTE_KEY, (Object) "on-return-object"));
+        assertThat(attributes, hasEntry(ON_RETURN_INSTANCE_ATTRIBUTE_KEY, 
"on-return-object"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
@@ -137,20 +144,20 @@ class MethodConfigTest {
         assertThat(method.getOnreturnMethod(), equalTo("on-return-method"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_RETURN_METHOD_ATTRIBUTE_KEY, (Object) "on-return-method"));
+        assertThat(attributes, hasEntry(ON_RETURN_METHOD_ATTRIBUTE_KEY, 
"on-return-method"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     //@Test
-    public void testOnthrow() {
+    void testOnthrow() {
         MethodConfig method = new MethodConfig();
         method.setOnthrow("on-throw-object");
-        assertThat(method.getOnthrow(), equalTo((Object) "on-throw-object"));
+        assertThat(method.getOnthrow(), equalTo("on-throw-object"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_THROW_INSTANCE_ATTRIBUTE_KEY, (Object) "on-throw-object"));
+        assertThat(attributes, hasEntry(ON_THROW_INSTANCE_ATTRIBUTE_KEY, 
"on-throw-object"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
@@ -163,20 +170,20 @@ class MethodConfigTest {
         assertThat(method.getOnthrowMethod(), equalTo("on-throw-method"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_THROW_METHOD_ATTRIBUTE_KEY, (Object) "on-throw-method"));
+        assertThat(attributes, hasEntry(ON_THROW_METHOD_ATTRIBUTE_KEY, 
"on-throw-method"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     //@Test
-    public void testOninvoke() {
+    void testOninvoke() {
         MethodConfig method = new MethodConfig();
         method.setOninvoke("on-invoke-object");
-        assertThat(method.getOninvoke(), equalTo((Object) "on-invoke-object"));
+        assertThat(method.getOninvoke(), equalTo("on-invoke-object"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_INVOKE_INSTANCE_ATTRIBUTE_KEY, (Object) "on-invoke-object"));
+        assertThat(attributes, hasEntry(ON_INVOKE_INSTANCE_ATTRIBUTE_KEY, 
"on-invoke-object"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
@@ -189,7 +196,7 @@ class MethodConfigTest {
         assertThat(method.getOninvokeMethod(), equalTo("on-invoke-method"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_INVOKE_METHOD_ATTRIBUTE_KEY, (Object) "on-invoke-method"));
+        assertThat(attributes, hasEntry(ON_INVOKE_METHOD_ATTRIBUTE_KEY, 
"on-invoke-method"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
index 6588e58d58..d8580388cf 100644
--- 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/MethodConfigTest.java
@@ -22,7 +22,9 @@ import org.apache.dubbo.config.annotation.Method;
 import org.apache.dubbo.config.annotation.Reference;
 import org.apache.dubbo.config.api.DemoService;
 import org.apache.dubbo.config.bootstrap.DubboBootstrap;
+import org.apache.dubbo.config.common.Person;
 import org.apache.dubbo.config.provider.impl.DemoServiceImpl;
+import org.apache.dubbo.rpc.model.AsyncMethodInfo;
 
 import org.hamcrest.Matchers;
 import org.junit.jupiter.api.AfterEach;
@@ -50,6 +52,7 @@ import static org.hamcrest.Matchers.hasEntry;
 import static org.hamcrest.Matchers.hasKey;
 import static org.hamcrest.Matchers.is;
 import static org.hamcrest.Matchers.not;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 class MethodConfigTest {
     private static final String METHOD_NAME = "sayHello";
@@ -119,7 +122,7 @@ class MethodConfigTest {
     }
 
     @Test
-    void testName() throws Exception {
+    void testName() {
         MethodConfig method = new MethodConfig();
         method.setName("hello");
         assertThat(method.getName(), equalTo("hello"));
@@ -129,42 +132,42 @@ class MethodConfigTest {
     }
 
     @Test
-    void testStat() throws Exception {
+    void testStat() {
         MethodConfig method = new MethodConfig();
         method.setStat(10);
         assertThat(method.getStat(), equalTo(10));
     }
 
     @Test
-    void testRetry() throws Exception {
+    void testRetry() {
         MethodConfig method = new MethodConfig();
         method.setRetry(true);
         assertThat(method.isRetry(), is(true));
     }
 
     @Test
-    void testReliable() throws Exception {
+    void testReliable() {
         MethodConfig method = new MethodConfig();
         method.setReliable(true);
         assertThat(method.isReliable(), is(true));
     }
 
     @Test
-    void testExecutes() throws Exception {
+    void testExecutes() {
         MethodConfig method = new MethodConfig();
         method.setExecutes(10);
         assertThat(method.getExecutes(), equalTo(10));
     }
 
     @Test
-    void testDeprecated() throws Exception {
+    void testDeprecated() {
         MethodConfig method = new MethodConfig();
         method.setDeprecated(true);
         assertThat(method.getDeprecated(), is(true));
     }
 
     @Test
-    void testArguments() throws Exception {
+    void testArguments() {
         MethodConfig method = new MethodConfig();
         ArgumentConfig argument = new ArgumentConfig();
         method.setArguments(Collections.singletonList(argument));
@@ -173,14 +176,32 @@ class MethodConfigTest {
     }
 
     @Test
-    void testSticky() throws Exception {
+    void testSticky() {
         MethodConfig method = new MethodConfig();
         method.setSticky(true);
         assertThat(method.getSticky(), is(true));
     }
 
+    @Test
+    void testConvertMethodConfig2AsyncInfo() throws Exception {
+        MethodConfig methodConfig = new MethodConfig();
+        String methodName = "setName";
+        methodConfig.setOninvokeMethod(methodName);
+        methodConfig.setOnthrowMethod(methodName);
+        methodConfig.setOnreturnMethod(methodName);
+        methodConfig.setOninvoke(new Person());
+        methodConfig.setOnthrow(new Person());
+        methodConfig.setOnreturn(new Person());
+
+        AsyncMethodInfo methodInfo = 
methodConfig.convertMethodConfig2AsyncInfo();
+
+        assertEquals(methodInfo.getOninvokeMethod(), 
Person.class.getMethod(methodName, String.class));
+        assertEquals(methodInfo.getOnthrowMethod(), 
Person.class.getMethod(methodName, String.class));
+        assertEquals(methodInfo.getOnreturnMethod(), 
Person.class.getMethod(methodName, String.class));
+    }
+
     //@Test
-    public void testOnReturn() throws Exception {
+    void testOnReturn() {
         MethodConfig method = new MethodConfig();
         method.setOnreturn("on-return-object");
         assertThat(method.getOnreturn(), equalTo("on-return-object"));
@@ -193,72 +214,72 @@ class MethodConfigTest {
     }
 
     @Test
-    void testOnReturnMethod() throws Exception {
+    void testOnReturnMethod() {
         MethodConfig method = new MethodConfig();
         method.setOnreturnMethod("on-return-method");
         assertThat(method.getOnreturnMethod(), equalTo("on-return-method"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_RETURN_METHOD_ATTRIBUTE_KEY, (Object) "on-return-method"));
+        assertThat(attributes, hasEntry(ON_RETURN_METHOD_ATTRIBUTE_KEY, 
"on-return-method"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     //@Test
-    public void testOnThrow() throws Exception {
+    void testOnThrow() {
         MethodConfig method = new MethodConfig();
         method.setOnthrow("on-throw-object");
-        assertThat(method.getOnthrow(), equalTo((Object) "on-throw-object"));
+        assertThat(method.getOnthrow(), equalTo("on-throw-object"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_THROW_INSTANCE_ATTRIBUTE_KEY, (Object) "on-throw-object"));
+        assertThat(attributes, hasEntry(ON_THROW_INSTANCE_ATTRIBUTE_KEY, 
"on-throw-object"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     @Test
-    void testOnThrowMethod() throws Exception {
+    void testOnThrowMethod() {
         MethodConfig method = new MethodConfig();
         method.setOnthrowMethod("on-throw-method");
         assertThat(method.getOnthrowMethod(), equalTo("on-throw-method"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_THROW_METHOD_ATTRIBUTE_KEY, (Object) "on-throw-method"));
+        assertThat(attributes, hasEntry(ON_THROW_METHOD_ATTRIBUTE_KEY, 
"on-throw-method"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     //@Test
-    public void testOnInvoke() throws Exception {
+    void testOnInvoke() {
         MethodConfig method = new MethodConfig();
         method.setOninvoke("on-invoke-object");
-        assertThat(method.getOninvoke(), equalTo((Object) "on-invoke-object"));
+        assertThat(method.getOninvoke(), equalTo("on-invoke-object"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_INVOKE_INSTANCE_ATTRIBUTE_KEY, (Object) "on-invoke-object"));
+        assertThat(attributes, hasEntry(ON_INVOKE_INSTANCE_ATTRIBUTE_KEY, 
"on-invoke-object"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     @Test
-    void testOnInvokeMethod() throws Exception {
+    void testOnInvokeMethod() {
         MethodConfig method = new MethodConfig();
         method.setOninvokeMethod("on-invoke-method");
         assertThat(method.getOninvokeMethod(), equalTo("on-invoke-method"));
         Map<String, String> attributes = new HashMap<>();
         MethodConfig.appendAttributes(attributes, method);
-        assertThat(attributes, hasEntry((Object) 
ON_INVOKE_METHOD_ATTRIBUTE_KEY, (Object) "on-invoke-method"));
+        assertThat(attributes, hasEntry(ON_INVOKE_METHOD_ATTRIBUTE_KEY, 
"on-invoke-method"));
         Map<String, String> parameters = new HashMap<String, String>();
         MethodConfig.appendParameters(parameters, method);
         assertThat(parameters.size(), is(0));
     }
 
     @Test
-    void testReturn() throws Exception {
+    void testReturn() {
         MethodConfig method = new MethodConfig();
         method.setReturn(true);
         assertThat(method.isReturn(), is(true));
diff --git 
a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/common/Person.java
 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/common/Person.java
new file mode 100644
index 0000000000..18ada6e51a
--- /dev/null
+++ 
b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/common/Person.java
@@ -0,0 +1,44 @@
+/*
+ * 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.dubbo.config.common;
+
+import java.io.Serializable;
+
+/**
+ * Person.java
+ */
+public class Person implements Serializable {
+    private static final long serialVersionUID = 1L;
+    private String name;
+    private int age;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public int getAge() {
+        return age;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+}

Reply via email to