From 7cd5b170c5557677db7e14a384b008d073ede489 Mon Sep 17 00:00:00 2001 From: chaoscchen Date: Thu, 23 May 2024 17:45:15 +0800 Subject: [PATCH 1/3] add trpc-spring junit --- ...FilterTRpcConfigManagerCustomizerTest.java | 116 ++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/configuration/AddFilterTRpcConfigManagerCustomizerTest.java diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/configuration/AddFilterTRpcConfigManagerCustomizerTest.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/configuration/AddFilterTRpcConfigManagerCustomizerTest.java new file mode 100644 index 0000000000..ef7073a3b4 --- /dev/null +++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/context/configuration/AddFilterTRpcConfigManagerCustomizerTest.java @@ -0,0 +1,116 @@ +/* + * Tencent is pleased to support the open source community by making tRPC available. + * + * Copyright (C) 2023 THL A29 Limited, a Tencent company. + * All rights reserved. + * + * If you have downloaded a copy of the tRPC source code from Tencent, + * please note that tRPC source code is licensed under the Apache 2.0 License, + * A copy of the Apache 2.0 License can be found in the LICENSE file. + */ + +package com.tencent.trpc.spring.context.configuration; + +import com.tencent.trpc.core.common.ConfigManager; +import com.tencent.trpc.core.common.config.ClientConfig; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; +import org.junit.Assert; +import org.junit.Test; + + +public class AddFilterTRpcConfigManagerCustomizerTest { + + + private static final String KEY = "OrderKey:b131d74c753540db859c626c564aa8ce"; + + @Test + public void testConstructor() { + AddFilterTRpcConfigManagerCustomizer addFilterTRpcConfigManagerCustomizer = new AddFilterTRpcConfigManagerCustomizer(); + Assert.assertNotNull(addFilterTRpcConfigManagerCustomizer); + } + + @Test + public void testAddClientFilters() { + AddFilterTRpcConfigManagerCustomizer addFilterTRpcConfigManagerCustomizer = new AddFilterTRpcConfigManagerCustomizer(); + AddFilterTRpcConfigManagerCustomizer customizer = addFilterTRpcConfigManagerCustomizer.addClientFilters( + "filter1", "filter2"); + Assert.assertEquals(addFilterTRpcConfigManagerCustomizer, customizer); + } + + @Test + public void testAddServerFilters() { + AddFilterTRpcConfigManagerCustomizer addFilterTRpcConfigManagerCustomizer = new AddFilterTRpcConfigManagerCustomizer(); + AddFilterTRpcConfigManagerCustomizer customizer = addFilterTRpcConfigManagerCustomizer.addServerFilters( + "filter1", "filter2"); + Assert.assertEquals(addFilterTRpcConfigManagerCustomizer, customizer); + } + + @Test + public void testCustomize() { + AddFilterTRpcConfigManagerCustomizer addFilterTRpcConfigManagerCustomizer = new AddFilterTRpcConfigManagerCustomizer(); + + ConfigManager instance = ConfigManager.getInstance(); + ClientConfig clientConfig = new ClientConfig(); + List list = Arrays.asList("filter1", "filter2"); + clientConfig.setFilters(list); + instance.setClientConfig(clientConfig); + addFilterTRpcConfigManagerCustomizer.customize(instance); + List filters = instance.getClientConfig().getFilters(); + + Assert.assertEquals(filters.size(), list.size()); + Assert.assertEquals(list, instance.getClientConfig().getFilters()); + } + + @Test + public void testGetOrder() { + AddFilterTRpcConfigManagerCustomizer addFilterTRpcConfigManagerCustomizer = new AddFilterTRpcConfigManagerCustomizer2(); + Assert.assertEquals(Integer.MAX_VALUE, addFilterTRpcConfigManagerCustomizer.getOrder()); + Integer value = 1024; + System.setProperty(KEY, String.valueOf(value)); + Assert.assertEquals((long) value, addFilterTRpcConfigManagerCustomizer.getOrder()); + } + + static final class AddFilterTRpcConfigManagerCustomizer2 extends AddFilterTRpcConfigManagerCustomizer { + + @Override + public int getOrder() { + return System.getProperty(KEY) == null ? super.getOrder() : Integer.parseInt(System.getProperty(KEY)); + } + } + + @Test + public void testEmptyIfNull() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { + + AddFilterTRpcConfigManagerCustomizer customizer = new AddFilterTRpcConfigManagerCustomizer(); + + Method method = customizer.getClass().getDeclaredMethod("emptyIfNull", List.class); + boolean accessible = method.isAccessible(); + method.setAccessible(true); + List list1 = Arrays.asList("filter1", "filter2", "filter3"); + Object invoke = method.invoke(customizer, list1); + if (invoke instanceof List) { + List resList = (List) invoke; + Assert.assertEquals(list1.size(), resList.size()); + } + method.setAccessible(accessible); + } + + @Test + public void testMerge() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { + AddFilterTRpcConfigManagerCustomizer customizer = new AddFilterTRpcConfigManagerCustomizer(); + List list1 = Arrays.asList("filter1", "filter2", "filter3"); + List list2 = Arrays.asList("filter4", "filter5", "filter6"); + Method method = customizer.getClass().getDeclaredMethod("merge", List.class, List.class); + boolean accessible = method.isAccessible(); + method.setAccessible(true); + Object invoke = method.invoke(customizer, list1, list2); + if (invoke instanceof List) { + List resList = (List) invoke; + Assert.assertEquals(list1.size() + list2.size(), resList.size()); + } + method.setAccessible(accessible); + } +} From b957cdea4ead70eed1ca71758edc77e385f87aac Mon Sep 17 00:00:00 2001 From: "hashmap2018@163.com" Date: Fri, 24 May 2024 10:33:04 +0800 Subject: [PATCH 2/3] remove nouse return value --- .../support/DefaultExceptionResultTransformerTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/DefaultExceptionResultTransformerTest.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/DefaultExceptionResultTransformerTest.java index 8dc8e7f315..ece4169040 100644 --- a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/DefaultExceptionResultTransformerTest.java +++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/DefaultExceptionResultTransformerTest.java @@ -82,7 +82,7 @@ public void testMessageToMessage() { public void testUnsupported() { DefaultExceptionResultTransformer transform = new DefaultExceptionResultTransformer(); MyResponse myResponse = new MyResponse("testObjectToMessage", "123456"); - Object result = transform.transform(myResponse, List.class); + transform.transform(myResponse, List.class); Assert.fail(); } From f450473b3d4341758a5da9f562ebe6132f0e9b27 Mon Sep 17 00:00:00 2001 From: chenhao26-nineteen Date: Fri, 24 May 2024 10:39:43 +0800 Subject: [PATCH 3/3] remove nouse return value --- .../support/InvocableExceptionHandlerTest.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java index 2854c55e0e..4eac214a4a 100644 --- a/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java +++ b/trpc-spring-support/trpc-spring/src/test/java/com/tencent/trpc/spring/exception/support/InvocableExceptionHandlerTest.java @@ -35,10 +35,10 @@ public void testInvocableExceptionHandler() throws Exception { HashSet set = new HashSet<>(); set.add(handler1); Assert.assertEquals(handler1.hashCode(), handler2.hashCode()); - Assert.assertEquals(true, handler1.equals(handler1)); - Assert.assertEquals(true, handler1.equals(handler2)); - Assert.assertEquals(false, handler1.equals(bean)); - Assert.assertEquals(true, set.contains(handler2)); + Assert.assertEquals(handler1, handler1); + Assert.assertEquals(handler1, handler2); + Assert.assertNotEquals(handler1, bean); + Assert.assertTrue(set.contains(handler2)); Assert.assertEquals(MyExceptionHandle.class, handler1.getTargetType()); } @@ -60,7 +60,8 @@ public void testHandleException() throws Throwable { Assert.assertEquals("myBean1", methodParameters[0].getParameterName()); Assert.assertEquals("e", methodParameters[1].getParameterName()); Assert.assertEquals("method11111", methodParameters[2].getParameterName()); - Assert.assertEquals(true, String.class.isAssignableFrom(result.getClass())); + assert result != null; + Assert.assertTrue(String.class.isAssignableFrom(result.getClass())); Assert.assertEquals("name1_IllegalArgumentException_targetMethod", result); }