diff --git a/console/src/test/java/com/alibaba/nacos/console/controller/HealthControllerTest.java b/console/src/test/java/com/alibaba/nacos/console/controller/HealthControllerTest.java index e5731e34fc9..cd139527559 100644 --- a/console/src/test/java/com/alibaba/nacos/console/controller/HealthControllerTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/controller/HealthControllerTest.java @@ -22,24 +22,24 @@ import com.alibaba.nacos.naming.cluster.NamingReadinessCheckService; import com.alibaba.nacos.naming.cluster.ServerStatus; import com.alibaba.nacos.naming.cluster.ServerStatusManager; -import org.junit.After; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.http.ResponseEntity; import java.lang.reflect.Field; import java.util.List; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; -@RunWith(MockitoJUnitRunner.class) -public class HealthControllerTest { +@ExtendWith(MockitoExtension.class) +class HealthControllerTest { @InjectMocks private HealthController healthController; @@ -50,68 +50,66 @@ public class HealthControllerTest { @Mock private ServerStatusManager serverStatusManager; - @Before - public void setUp() { + @BeforeEach + void setUp() { // auto register to module health checker holder. new NamingReadinessCheckService(serverStatusManager); new ConfigReadinessCheckService(configInfoPersistService); } - @After - public void tearDown() throws IllegalAccessException, NoSuchFieldException { + @AfterEach + void tearDown() throws IllegalAccessException, NoSuchFieldException { Field moduleHealthCheckersField = ModuleHealthCheckerHolder.class.getDeclaredField("moduleHealthCheckers"); moduleHealthCheckersField.setAccessible(true); ((List) moduleHealthCheckersField.get(ModuleHealthCheckerHolder.getInstance())).clear(); } @Test - public void testLiveness() throws Exception { + void testLiveness() throws Exception { ResponseEntity response = healthController.liveness(); - Assert.assertEquals(200, response.getStatusCodeValue()); + assertEquals(200, response.getStatusCodeValue()); } @Test - public void testReadinessSuccess() throws Exception { + void testReadinessSuccess() throws Exception { Mockito.when(configInfoPersistService.configInfoCount(any(String.class))).thenReturn(0); Mockito.when(serverStatusManager.getServerStatus()).thenReturn(ServerStatus.UP); ResponseEntity response = healthController.readiness(null); - Assert.assertEquals(200, response.getStatusCodeValue()); - Assert.assertEquals("OK", response.getBody()); + assertEquals(200, response.getStatusCodeValue()); + assertEquals("OK", response.getBody()); } @Test - public void testReadinessBothFailure() { + void testReadinessBothFailure() { // Config and Naming are not in readiness Mockito.when(configInfoPersistService.configInfoCount(any(String.class))) .thenThrow(new RuntimeException("HealthControllerTest.testReadiness")); - Mockito.when(serverStatusManager.getServerStatus()) - .thenThrow(new RuntimeException("HealthControllerTest.testReadiness")); + Mockito.when(serverStatusManager.getServerStatus()).thenThrow(new RuntimeException("HealthControllerTest.testReadiness")); ResponseEntity response = healthController.readiness(null); - Assert.assertEquals(500, response.getStatusCodeValue()); - Assert.assertEquals("naming and config not in readiness", response.getBody()); + assertEquals(500, response.getStatusCodeValue()); + assertEquals("naming and config not in readiness", response.getBody()); } @Test - public void testReadinessConfigFailure() { + void testReadinessConfigFailure() { // Config is not in readiness Mockito.when(configInfoPersistService.configInfoCount(any(String.class))) .thenThrow(new RuntimeException("HealthControllerTest.testReadiness")); Mockito.when(serverStatusManager.getServerStatus()).thenReturn(ServerStatus.UP); ResponseEntity response = healthController.readiness(null); - Assert.assertEquals(500, response.getStatusCodeValue()); - Assert.assertEquals("config not in readiness", response.getBody()); + assertEquals(500, response.getStatusCodeValue()); + assertEquals("config not in readiness", response.getBody()); } @Test - public void testReadinessNamingFailure() { + void testReadinessNamingFailure() { // Naming is not in readiness Mockito.when(configInfoPersistService.configInfoCount(any(String.class))).thenReturn(0); - Mockito.when(serverStatusManager.getServerStatus()) - .thenThrow(new RuntimeException("HealthControllerTest.testReadiness")); + Mockito.when(serverStatusManager.getServerStatus()).thenThrow(new RuntimeException("HealthControllerTest.testReadiness")); ResponseEntity response = healthController.readiness(null); - Assert.assertEquals(500, response.getStatusCodeValue()); - Assert.assertEquals("naming not in readiness", response.getBody()); + assertEquals(500, response.getStatusCodeValue()); + assertEquals("naming not in readiness", response.getBody()); } } diff --git a/console/src/test/java/com/alibaba/nacos/console/controller/NamespaceControllerTest.java b/console/src/test/java/com/alibaba/nacos/console/controller/NamespaceControllerTest.java index c1f4c1e0212..5fc208a687b 100644 --- a/console/src/test/java/com/alibaba/nacos/console/controller/NamespaceControllerTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/controller/NamespaceControllerTest.java @@ -18,22 +18,22 @@ import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.common.model.RestResult; -import com.alibaba.nacos.core.namespace.repository.NamespacePersistService; import com.alibaba.nacos.core.namespace.model.Namespace; +import com.alibaba.nacos.core.namespace.repository.NamespacePersistService; import com.alibaba.nacos.core.service.NamespaceOperationService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import java.util.Collections; import java.util.List; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.matches; @@ -41,8 +41,8 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -@RunWith(MockitoJUnitRunner.class) -public class NamespaceControllerTest { +@ExtendWith(MockitoExtension.class) +class NamespaceControllerTest { @InjectMocks private NamespaceController namespaceController; @@ -53,13 +53,13 @@ public class NamespaceControllerTest { @Mock private NamespaceOperationService namespaceOperationService; - @Before - public void setUp() { + @BeforeEach + void setUp() { } @Test - public void testGetNamespaces() throws Exception { + void testGetNamespaces() throws Exception { Namespace namespace = new Namespace("", "public"); when(namespaceOperationService.getNamespaceList()).thenReturn(Collections.singletonList(namespace)); RestResult> actual = namespaceController.getNamespaces(); @@ -69,20 +69,20 @@ public void testGetNamespaces() throws Exception { } @Test - public void testGetNamespaceByNamespaceId() throws Exception { + void testGetNamespaceByNamespaceId() throws Exception { Namespace namespace = new Namespace("", "public", "", 0, 0, 0); when(namespaceOperationService.getNamespace("")).thenReturn(namespace); assertEquals(namespace, namespaceController.getNamespace("")); } @Test - public void testCreateNamespaceWithCustomId() throws Exception { + void testCreateNamespaceWithCustomId() throws Exception { namespaceController.createNamespace("test-Id", "testName", "testDesc"); verify(namespaceOperationService).createNamespace("test-Id", "testName", "testDesc"); } - + @Test - public void testCreateNamespaceWithIllegalName() { + void testCreateNamespaceWithIllegalName() { assertFalse(namespaceController.createNamespace(null, "test@Name", "testDesc")); assertFalse(namespaceController.createNamespace(null, "test#Name", "testDesc")); assertFalse(namespaceController.createNamespace(null, "test$Name", "testDesc")); @@ -91,21 +91,21 @@ public void testCreateNamespaceWithIllegalName() { assertFalse(namespaceController.createNamespace(null, "test&Name", "testDesc")); assertFalse(namespaceController.createNamespace(null, "test*Name", "testDesc")); } - + @Test - public void testCreateNamespaceWithNonUniqueId() throws Exception { + void testCreateNamespaceWithNonUniqueId() throws Exception { when(namespacePersistService.tenantInfoCountByTenantId("test-Id")).thenReturn(1); assertFalse(namespaceController.createNamespace("test-Id", "testNam2", "testDesc")); } @Test - public void testCreateNamespaceWithIllegalCustomId() throws Exception { + void testCreateNamespaceWithIllegalCustomId() throws Exception { assertFalse(namespaceController.createNamespace("test.Id", "testName", "testDesc")); verify(namespaceOperationService, never()).createNamespace("test.Id", "testName", "testDesc"); } @Test - public void testCreateNamespaceWithLongCustomId() throws Exception { + void testCreateNamespaceWithLongCustomId() throws Exception { StringBuilder longId = new StringBuilder(); for (int i = 0; i < 129; i++) { longId.append("a"); @@ -115,22 +115,20 @@ public void testCreateNamespaceWithLongCustomId() throws Exception { } @Test - public void testCreateNamespaceWithAutoId() throws Exception { + void testCreateNamespaceWithAutoId() throws Exception { assertFalse(namespaceController.createNamespace("", "testName", "testDesc")); - verify(namespaceOperationService) - .createNamespace(matches("[A-Za-z\\d]{8}-[A-Za-z\\d]{4}-[A-Za-z\\d]{4}-[A-Za-z\\d]{4}-[A-Za-z\\d]{12}"), - eq("testName"), eq("testDesc")); + verify(namespaceOperationService).createNamespace( + matches("[A-Za-z\\d]{8}-[A-Za-z\\d]{4}-[A-Za-z\\d]{4}-[A-Za-z\\d]{4}-[A-Za-z\\d]{12}"), eq("testName"), eq("testDesc")); } @Test - public void testCreateNamespaceFailure() throws NacosException { - when(namespaceOperationService.createNamespace(anyString(), anyString(), anyString())) - .thenThrow(new NacosException(500, "test")); + void testCreateNamespaceFailure() throws NacosException { + when(namespaceOperationService.createNamespace(anyString(), anyString(), anyString())).thenThrow(new NacosException(500, "test")); assertFalse(namespaceController.createNamespace("", "testName", "testDesc")); } @Test - public void testCheckNamespaceIdExist() throws Exception { + void testCheckNamespaceIdExist() throws Exception { when(namespacePersistService.tenantInfoCountByTenantId("public")).thenReturn(1); when(namespacePersistService.tenantInfoCountByTenantId("123")).thenReturn(0); assertFalse(namespaceController.checkNamespaceIdExist("")); @@ -139,13 +137,13 @@ public void testCheckNamespaceIdExist() throws Exception { } @Test - public void testEditNamespace() { + void testEditNamespace() { namespaceController.editNamespace("test-Id", "testName", "testDesc"); verify(namespaceOperationService).editNamespace("test-Id", "testName", "testDesc"); } - + @Test - public void testEditNamespaceWithIllegalName() { + void testEditNamespaceWithIllegalName() { assertFalse(namespaceController.createNamespace(null, "test@Name", "testDesc")); assertFalse(namespaceController.createNamespace(null, "test#Name", "testDesc")); assertFalse(namespaceController.createNamespace(null, "test$Name", "testDesc")); @@ -156,7 +154,7 @@ public void testEditNamespaceWithIllegalName() { } @Test - public void deleteConfig() throws Exception { + void deleteConfig() throws Exception { namespaceController.deleteNamespace("test-Id"); verify(namespaceOperationService).removeNamespace("test-Id"); } diff --git a/console/src/test/java/com/alibaba/nacos/console/controller/ServerStateControllerTest.java b/console/src/test/java/com/alibaba/nacos/console/controller/ServerStateControllerTest.java index 7a0249690a0..a37082a84ef 100644 --- a/console/src/test/java/com/alibaba/nacos/console/controller/ServerStateControllerTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/controller/ServerStateControllerTest.java @@ -21,12 +21,11 @@ import com.alibaba.nacos.sys.env.Constants; import com.alibaba.nacos.sys.env.EnvUtil; import com.fasterxml.jackson.databind.node.ObjectNode; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.mock.env.MockEnvironment; import org.springframework.mock.web.MockHttpServletResponse; @@ -35,6 +34,8 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import static org.junit.jupiter.api.Assertions.assertEquals; + /** * ServerStateController unit test. * @@ -43,34 +44,33 @@ * @Date: 2022/8/13 10:54 * @Description: TODO */ -@RunWith(MockitoJUnitRunner.class) -public class ServerStateControllerTest { +@ExtendWith(MockitoExtension.class) +class ServerStateControllerTest { + + private static final String CONSOLE_URL = "/v1/console/server/state"; @InjectMocks private ServerStateController serverStateController; private MockMvc mockmvc; - private static final String CONSOLE_URL = "/v1/console/server/state"; - private ConfigurableEnvironment environment; - @Before - public void setUp() { + @BeforeEach + void setUp() { environment = new MockEnvironment(); EnvUtil.setEnvironment(environment); mockmvc = MockMvcBuilders.standaloneSetup(serverStateController).build(); } @Test - public void serverState() throws Exception { + void serverState() throws Exception { MockHttpServletRequestBuilder builder = MockMvcRequestBuilders.get(CONSOLE_URL); MockHttpServletResponse response = mockmvc.perform(builder).andReturn().getResponse(); - Assert.assertEquals(200, response.getStatus()); + assertEquals(200, response.getStatus()); ObjectNode responseContent = JacksonUtils.toObj(response.getContentAsByteArray(), ObjectNode.class); - Assert.assertEquals(EnvUtil.STANDALONE_MODE_CLUSTER, - responseContent.get(Constants.STARTUP_MODE_STATE).asText()); - Assert.assertEquals("null", responseContent.get(Constants.FUNCTION_MODE_STATE).asText()); - Assert.assertEquals(VersionUtils.version, responseContent.get(Constants.NACOS_VERSION).asText()); + assertEquals(EnvUtil.STANDALONE_MODE_CLUSTER, responseContent.get(Constants.STARTUP_MODE_STATE).asText()); + assertEquals("null", responseContent.get(Constants.FUNCTION_MODE_STATE).asText()); + assertEquals(VersionUtils.version, responseContent.get(Constants.NACOS_VERSION).asText()); } } diff --git a/console/src/test/java/com/alibaba/nacos/console/controller/v2/HealthControllerV2Test.java b/console/src/test/java/com/alibaba/nacos/console/controller/v2/HealthControllerV2Test.java index f725339cc5a..e64e08a9213 100644 --- a/console/src/test/java/com/alibaba/nacos/console/controller/v2/HealthControllerV2Test.java +++ b/console/src/test/java/com/alibaba/nacos/console/controller/v2/HealthControllerV2Test.java @@ -23,19 +23,19 @@ import com.alibaba.nacos.naming.cluster.NamingReadinessCheckService; import com.alibaba.nacos.naming.cluster.ServerStatus; import com.alibaba.nacos.naming.cluster.ServerStatusManager; -import org.junit.After; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import java.lang.reflect.Field; import java.util.List; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; /** @@ -43,8 +43,8 @@ * * @author DiligenceLai */ -@RunWith(MockitoJUnitRunner.class) -public class HealthControllerV2Test { +@ExtendWith(MockitoExtension.class) +class HealthControllerV2Test { @InjectMocks private HealthControllerV2 healthControllerV2; @@ -55,68 +55,66 @@ public class HealthControllerV2Test { @Mock private ServerStatusManager serverStatusManager; - @Before - public void setUp() { + @BeforeEach + void setUp() { // auto register to module health checker holder. new NamingReadinessCheckService(serverStatusManager); new ConfigReadinessCheckService(configInfoPersistService); } - @After - public void tearDown() throws IllegalAccessException, NoSuchFieldException { + @AfterEach + void tearDown() throws IllegalAccessException, NoSuchFieldException { Field moduleHealthCheckersField = ModuleHealthCheckerHolder.class.getDeclaredField("moduleHealthCheckers"); moduleHealthCheckersField.setAccessible(true); ((List) moduleHealthCheckersField.get(ModuleHealthCheckerHolder.getInstance())).clear(); } @Test - public void testLiveness() throws Exception { + void testLiveness() throws Exception { Result result = healthControllerV2.liveness(); - Assert.assertEquals(0, result.getCode().intValue()); + assertEquals(0, result.getCode().intValue()); } @Test - public void testReadinessSuccess() throws Exception { + void testReadinessSuccess() throws Exception { Mockito.when(configInfoPersistService.configInfoCount(any(String.class))).thenReturn(0); Mockito.when(serverStatusManager.getServerStatus()).thenReturn(ServerStatus.UP); Result result = healthControllerV2.readiness(null); - Assert.assertEquals(0, result.getCode().intValue()); - Assert.assertEquals("success", result.getMessage()); + assertEquals(0, result.getCode().intValue()); + assertEquals("success", result.getMessage()); } @Test - public void testReadinessBothFailure() { + void testReadinessBothFailure() { // Config and Naming are not in readiness Mockito.when(configInfoPersistService.configInfoCount(any(String.class))) .thenThrow(new RuntimeException("HealthControllerV2Test.testReadiness")); - Mockito.when(serverStatusManager.getServerStatus()) - .thenThrow(new RuntimeException("HealthControllerV2Test.testReadiness")); + Mockito.when(serverStatusManager.getServerStatus()).thenThrow(new RuntimeException("HealthControllerV2Test.testReadiness")); Result result = healthControllerV2.readiness(null); - Assert.assertEquals(30000, result.getCode().intValue()); - Assert.assertEquals("naming and config not in readiness", result.getMessage()); + assertEquals(30000, result.getCode().intValue()); + assertEquals("naming and config not in readiness", result.getMessage()); } @Test - public void testReadinessConfigFailure() { + void testReadinessConfigFailure() { // Config is not in readiness Mockito.when(configInfoPersistService.configInfoCount(any(String.class))) .thenThrow(new RuntimeException("HealthControllerV2Test.testReadiness")); Mockito.when(serverStatusManager.getServerStatus()).thenReturn(ServerStatus.UP); Result result = healthControllerV2.readiness(null); - Assert.assertEquals(30000, result.getCode().intValue()); - Assert.assertEquals("config not in readiness", result.getMessage()); + assertEquals(30000, result.getCode().intValue()); + assertEquals("config not in readiness", result.getMessage()); } @Test - public void testReadinessNamingFailure() { + void testReadinessNamingFailure() { // Naming is not in readiness Mockito.when(configInfoPersistService.configInfoCount(any(String.class))).thenReturn(0); - Mockito.when(serverStatusManager.getServerStatus()) - .thenThrow(new RuntimeException("HealthControllerV2Test.testReadiness")); + Mockito.when(serverStatusManager.getServerStatus()).thenThrow(new RuntimeException("HealthControllerV2Test.testReadiness")); Result result = healthControllerV2.readiness(null); - Assert.assertEquals(30000, result.getCode().intValue()); - Assert.assertEquals("naming not in readiness", result.getMessage()); + assertEquals(30000, result.getCode().intValue()); + assertEquals("naming not in readiness", result.getMessage()); } } diff --git a/console/src/test/java/com/alibaba/nacos/console/controller/v2/NamespaceControllerV2Test.java b/console/src/test/java/com/alibaba/nacos/console/controller/v2/NamespaceControllerV2Test.java index 16fd58aba06..658b0706a6f 100644 --- a/console/src/test/java/com/alibaba/nacos/console/controller/v2/NamespaceControllerV2Test.java +++ b/console/src/test/java/com/alibaba/nacos/console/controller/v2/NamespaceControllerV2Test.java @@ -19,22 +19,23 @@ import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.api.model.v2.ErrorCode; import com.alibaba.nacos.api.model.v2.Result; -import com.alibaba.nacos.core.namespace.model.NamespaceTypeEnum; import com.alibaba.nacos.core.namespace.model.Namespace; +import com.alibaba.nacos.core.namespace.model.NamespaceTypeEnum; import com.alibaba.nacos.core.namespace.model.form.NamespaceForm; import com.alibaba.nacos.core.namespace.repository.NamespacePersistService; import com.alibaba.nacos.core.service.NamespaceOperationService; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import java.util.Collections; import java.util.List; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertThrows; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -44,30 +45,30 @@ * @author dongyafei * @date 2022/8/16 */ -@RunWith(MockitoJUnitRunner.class) -public class NamespaceControllerV2Test { +@ExtendWith(MockitoExtension.class) +class NamespaceControllerV2Test { + + private static final String TEST_NAMESPACE_ID = "testId"; + + private static final String TEST_NAMESPACE_NAME = "testName"; + + private static final String TEST_NAMESPACE_DESC = "testDesc"; private NamespaceControllerV2 namespaceControllerV2; @Mock private NamespaceOperationService namespaceOperationService; - + @Mock private NamespacePersistService namespacePersistService; - private static final String TEST_NAMESPACE_ID = "testId"; - - private static final String TEST_NAMESPACE_NAME = "testName"; - - private static final String TEST_NAMESPACE_DESC = "testDesc"; - - @Before - public void setUp() throws Exception { + @BeforeEach + void setUp() throws Exception { namespaceControllerV2 = new NamespaceControllerV2(namespaceOperationService, namespacePersistService); } @Test - public void testGetNamespaceList() { + void testGetNamespaceList() { Namespace namespace = new Namespace(); namespace.setNamespace(TEST_NAMESPACE_ID); namespace.setNamespaceShowName(TEST_NAMESPACE_NAME); @@ -89,7 +90,7 @@ public void testGetNamespaceList() { } @Test - public void testGetNamespace() throws NacosException { + void testGetNamespace() throws NacosException { Namespace namespaceAllInfo = new Namespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC, 200, 1, NamespaceTypeEnum.GLOBAL.getType()); when(namespaceOperationService.getNamespace(TEST_NAMESPACE_ID)).thenReturn(namespaceAllInfo); @@ -105,49 +106,48 @@ public void testGetNamespace() throws NacosException { } @Test - public void testCreateNamespace() throws NacosException { - when(namespaceOperationService.createNamespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)) - .thenReturn(true); - Result result = namespaceControllerV2 - .createNamespace(new NamespaceForm(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)); + void testCreateNamespace() throws NacosException { + when(namespaceOperationService.createNamespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)).thenReturn(true); + Result result = namespaceControllerV2.createNamespace( + new NamespaceForm(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)); verify(namespaceOperationService).createNamespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC); assertEquals(ErrorCode.SUCCESS.getCode(), result.getCode()); - assertEquals(true, result.getData()); + assertTrue(result.getData()); } - + @Test - public void testCreateNamespaceWithIllegalName() { + void testCreateNamespaceWithIllegalName() { NamespaceForm form = new NamespaceForm(); form.setNamespaceDesc("testDesc"); form.setNamespaceName("test@Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test$Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test#Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test%Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test^Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test&Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test*Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName(""); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); } - + @Test - public void testCreateNamespaceWithNonUniqueId() { + void testCreateNamespaceWithNonUniqueId() { when(namespacePersistService.tenantInfoCountByTenantId("test-id")).thenReturn(1); NamespaceForm form = new NamespaceForm(); form.setNamespaceId("test-id"); @@ -157,54 +157,53 @@ public void testCreateNamespaceWithNonUniqueId() { } @Test - public void testEditNamespace() throws NacosException { - when(namespaceOperationService.editNamespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)) - .thenReturn(true); - Result result = namespaceControllerV2 - .editNamespace(new NamespaceForm(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)); + void testEditNamespace() throws NacosException { + when(namespaceOperationService.editNamespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)).thenReturn(true); + Result result = namespaceControllerV2.editNamespace( + new NamespaceForm(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC)); verify(namespaceOperationService).editNamespace(TEST_NAMESPACE_ID, TEST_NAMESPACE_NAME, TEST_NAMESPACE_DESC); assertEquals(ErrorCode.SUCCESS.getCode(), result.getCode()); - assertEquals(true, result.getData()); + assertTrue(result.getData()); } - + @Test - public void testEditNamespaceWithIllegalName() { + void testEditNamespaceWithIllegalName() { NamespaceForm form = new NamespaceForm(); form.setNamespaceId("test-id"); form.setNamespaceDesc("testDesc"); - + form.setNamespaceName("test@Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test#Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test$Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test%Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test^Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test&Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); - + form.setNamespaceName("test*Name"); assertThrows(NacosException.class, () -> namespaceControllerV2.createNamespace(form)); } @Test - public void testDeleteNamespace() { + void testDeleteNamespace() { when(namespaceOperationService.removeNamespace(TEST_NAMESPACE_ID)).thenReturn(true); Result result = namespaceControllerV2.deleteNamespace(TEST_NAMESPACE_ID); verify(namespaceOperationService).removeNamespace(TEST_NAMESPACE_ID); assertEquals(ErrorCode.SUCCESS.getCode(), result.getCode()); - assertEquals(true, result.getData()); + assertTrue(result.getData()); } } diff --git a/console/src/test/java/com/alibaba/nacos/console/exception/ConsoleExceptionHandlerTest.java b/console/src/test/java/com/alibaba/nacos/console/exception/ConsoleExceptionHandlerTest.java index 6b0e30a307a..c1a0fd24edc 100644 --- a/console/src/test/java/com/alibaba/nacos/console/exception/ConsoleExceptionHandlerTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/exception/ConsoleExceptionHandlerTest.java @@ -19,55 +19,55 @@ import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.api.exception.runtime.NacosRuntimeException; import com.alibaba.nacos.console.controller.v2.HealthControllerV2; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; import org.springframework.boot.test.mock.mockito.MockBean; -import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.junit.jupiter.SpringExtension; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.ResultActions; import org.springframework.test.web.servlet.result.MockMvcResultMatchers; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; + import static org.mockito.Mockito.when; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -@RunWith(SpringRunner.class) +@ExtendWith(SpringExtension.class) @WebMvcTest(ConsoleExceptionHandlerTest.class) -public class ConsoleExceptionHandlerTest { +class ConsoleExceptionHandlerTest { + private MockMvc mockMvc; - + @Autowired private WebApplicationContext context; - + @MockBean private HealthControllerV2 healthControllerV2; - - @Before - public void before() { + + @BeforeEach + void before() { mockMvc = MockMvcBuilders.webAppContextSetup(context).build(); } - + @Test - public void testNacosRunTimeExceptionHandler() throws Exception { + void testNacosRunTimeExceptionHandler() throws Exception { // 设置HealthControllerV2的行为,使其抛出NacosRuntimeException并被ConsoleExceptionHandler捕获处理 - when(healthControllerV2.liveness()) - .thenThrow(new NacosRuntimeException(NacosException.INVALID_PARAM)) - .thenThrow(new NacosRuntimeException(NacosException.SERVER_ERROR)) - .thenThrow(new NacosRuntimeException(503)); - + when(healthControllerV2.liveness()).thenThrow(new NacosRuntimeException(NacosException.INVALID_PARAM)) + .thenThrow(new NacosRuntimeException(NacosException.SERVER_ERROR)).thenThrow(new NacosRuntimeException(503)); + // 执行请求并验证响应码 - ResultActions resultActions = mockMvc.perform(get("/v2/console/health/liveness")); + ResultActions resultActions = mockMvc.perform(get("/v2/console/health/liveness")); resultActions.andExpect(MockMvcResultMatchers.status().is(NacosException.INVALID_PARAM)); - + // 执行请求并验证响应码 - ResultActions resultActions1 = mockMvc.perform(get("/v2/console/health/liveness")); + ResultActions resultActions1 = mockMvc.perform(get("/v2/console/health/liveness")); resultActions1.andExpect(MockMvcResultMatchers.status().is(NacosException.SERVER_ERROR)); - + // 执行请求并验证响应码 - ResultActions resultActions2 = mockMvc.perform(get("/v2/console/health/liveness")); + ResultActions resultActions2 = mockMvc.perform(get("/v2/console/health/liveness")); resultActions2.andExpect(MockMvcResultMatchers.status().is(503)); } } \ No newline at end of file diff --git a/console/src/test/java/com/alibaba/nacos/console/exception/NacosApiExceptionHandlerTest.java b/console/src/test/java/com/alibaba/nacos/console/exception/NacosApiExceptionHandlerTest.java index 41784642f2d..920a1030333 100644 --- a/console/src/test/java/com/alibaba/nacos/console/exception/NacosApiExceptionHandlerTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/exception/NacosApiExceptionHandlerTest.java @@ -19,8 +19,8 @@ import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.api.exception.runtime.NacosRuntimeException; import com.alibaba.nacos.console.controller.v2.NamespaceControllerV2; -import org.junit.Before; -import org.junit.Test; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; @@ -31,44 +31,44 @@ import org.springframework.test.web.servlet.result.MockMvcResultMatchers; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; + import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.when; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; @RunWith(SpringRunner.class) @WebMvcTest(NacosApiExceptionHandler.class) -public class NacosApiExceptionHandlerTest { +class NacosApiExceptionHandlerTest { + private MockMvc mockMvc; - + @Autowired private WebApplicationContext context; - + @MockBean private NamespaceControllerV2 namespaceControllerV2; - - @Before - public void before() { + + @BeforeEach + void before() { mockMvc = MockMvcBuilders.webAppContextSetup(context).build(); } - + @Test - public void testNacosRunTimeExceptionHandler() throws Exception { + void testNacosRunTimeExceptionHandler() throws Exception { // 设置NamespaceControllerV2的行为,使其抛出NacosRuntimeException并被NacosApiExceptionHandler捕获处理 - when(namespaceControllerV2.createNamespace(any())) - .thenThrow(new NacosRuntimeException(NacosException.INVALID_PARAM)) - .thenThrow(new NacosRuntimeException(NacosException.SERVER_ERROR)) - .thenThrow(new NacosRuntimeException(503)); - + when(namespaceControllerV2.createNamespace(any())).thenThrow(new NacosRuntimeException(NacosException.INVALID_PARAM)) + .thenThrow(new NacosRuntimeException(NacosException.SERVER_ERROR)).thenThrow(new NacosRuntimeException(503)); + // 执行请求并验证响应码 - ResultActions resultActions = mockMvc.perform(post("/v2/console/namespace")); + ResultActions resultActions = mockMvc.perform(post("/v2/console/namespace")); resultActions.andExpect(MockMvcResultMatchers.status().is(NacosException.INVALID_PARAM)); - + // 执行请求并验证响应码 - ResultActions resultActions1 = mockMvc.perform(post("/v2/console/namespace")); + ResultActions resultActions1 = mockMvc.perform(post("/v2/console/namespace")); resultActions1.andExpect(MockMvcResultMatchers.status().is(NacosException.SERVER_ERROR)); - + // 执行请求并验证响应码 - ResultActions resultActions2 = mockMvc.perform(post("/v2/console/namespace")); + ResultActions resultActions2 = mockMvc.perform(post("/v2/console/namespace")); resultActions2.andExpect(MockMvcResultMatchers.status().is(503)); } } \ No newline at end of file diff --git a/console/src/test/java/com/alibaba/nacos/console/filter/XssFilterTest.java b/console/src/test/java/com/alibaba/nacos/console/filter/XssFilterTest.java index 45212445625..6598092264c 100644 --- a/console/src/test/java/com/alibaba/nacos/console/filter/XssFilterTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/filter/XssFilterTest.java @@ -16,11 +16,11 @@ package com.alibaba.nacos.console.filter; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.Mockito; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import javax.servlet.FilterChain; import javax.servlet.ServletException; @@ -28,8 +28,8 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; -@RunWith(MockitoJUnitRunner.class) -public class XssFilterTest { +@ExtendWith(MockitoExtension.class) +class XssFilterTest { private static final String CONTENT_SECURITY_POLICY_HEADER = "Content-Security-Policy"; @@ -45,7 +45,7 @@ public class XssFilterTest { private FilterChain filterChain; @Test - public void testSetResponseHeader() throws ServletException, IOException { + void testSetResponseHeader() throws ServletException, IOException { XssFilter xssFilter = new XssFilter(); xssFilter.doFilterInternal(request, response, filterChain); Mockito.verify(response).setHeader(CONTENT_SECURITY_POLICY_HEADER, CONTENT_SECURITY_POLICY); diff --git a/console/src/test/java/com/alibaba/nacos/console/paramcheck/ParamExtractorTest.java b/console/src/test/java/com/alibaba/nacos/console/paramcheck/ParamExtractorTest.java index f14029bafd5..ba6f68589b1 100644 --- a/console/src/test/java/com/alibaba/nacos/console/paramcheck/ParamExtractorTest.java +++ b/console/src/test/java/com/alibaba/nacos/console/paramcheck/ParamExtractorTest.java @@ -22,19 +22,19 @@ import com.alibaba.nacos.core.paramcheck.ExtractorManager; import com.alibaba.nacos.core.paramcheck.ParamCheckerFilter; import com.alibaba.nacos.sys.env.EnvUtil; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.MockedStatic; import org.mockito.Mockito; import org.mockito.internal.verification.Times; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.mock.web.MockHttpServletResponse; import java.lang.reflect.Method; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /** * Param Console ExtractorTest. @@ -42,8 +42,8 @@ * @author 985492783@qq.com * @date 2023/11/9 17:07 */ -@RunWith(MockitoJUnitRunner.class) -public class ParamExtractorTest { +@ExtendWith(MockitoExtension.class) +class ParamExtractorTest { @Mock private ControllerMethodsCache methodsCache; @@ -51,16 +51,14 @@ public class ParamExtractorTest { private ParamCheckerFilter filter; @Test - public void testDefaultFilter() throws Exception { + void testDefaultFilter() throws Exception { MockedStatic mockedStatic = Mockito.mockStatic(EnvUtil.class); final Method check = NamespaceController.class.getMethod("getNamespaces"); - ExtractorManager.Extractor annotation = NamespaceController.class.getAnnotation( - ExtractorManager.Extractor.class); + ExtractorManager.Extractor annotation = NamespaceController.class.getAnnotation(ExtractorManager.Extractor.class); AbstractHttpParamExtractor httpExtractor = Mockito.spy(ExtractorManager.getHttpExtractor(annotation)); MockedStatic managerMockedStatic = Mockito.mockStatic(ExtractorManager.class); - mockedStatic.when(() -> EnvUtil.getProperty(Mockito.any(), Mockito.any(), Mockito.any())) - .thenAnswer((k) -> k.getArgument(2)); + mockedStatic.when(() -> EnvUtil.getProperty(Mockito.any(), Mockito.any(), Mockito.any())).thenAnswer((k) -> k.getArgument(2)); filter = new ParamCheckerFilter(methodsCache); managerMockedStatic.when(() -> ExtractorManager.getHttpExtractor(annotation)).thenReturn(httpExtractor); @@ -71,7 +69,7 @@ public void testDefaultFilter() throws Exception { filter.doFilter(request, response, (servletRequest, servletResponse) -> { }); - assertEquals(httpExtractor.getClass(), ConsoleDefaultHttpParamExtractor.class); + assertEquals(ConsoleDefaultHttpParamExtractor.class, httpExtractor.getClass()); Mockito.verify(httpExtractor, new Times(1)).extractParam(Mockito.any()); managerMockedStatic.close(); mockedStatic.close();