You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by du...@apache.org on 2022/05/12 02:32:44 UTC

[rocketmq] branch develop updated: fix: fix ACL tests on Windows (#4278)

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

duhengforever pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git


The following commit(s) were added to refs/heads/develop by this push:
     new edbea4dab fix: fix ACL tests on Windows (#4278)
edbea4dab is described below

commit edbea4dabf3e1b3a77cc8351586ffc713561921a
Author: cnScarb <jj...@163.com>
AuthorDate: Thu May 12 10:32:38 2022 +0800

    fix: fix ACL tests on Windows (#4278)
---
 .../acl/plain/PlainAccessValidatorTest.java        | 74 +++++++++++++---------
 1 file changed, 43 insertions(+), 31 deletions(-)

diff --git a/acl/src/test/java/org/apache/rocketmq/acl/plain/PlainAccessValidatorTest.java b/acl/src/test/java/org/apache/rocketmq/acl/plain/PlainAccessValidatorTest.java
index 739f4d2cf..21f200eb3 100644
--- a/acl/src/test/java/org/apache/rocketmq/acl/plain/PlainAccessValidatorTest.java
+++ b/acl/src/test/java/org/apache/rocketmq/acl/plain/PlainAccessValidatorTest.java
@@ -16,6 +16,18 @@
  */
 package org.apache.rocketmq.acl.plain;
 
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.lang.reflect.Field;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import org.apache.rocketmq.acl.common.AclClientRPCHook;
 import org.apache.rocketmq.acl.common.AclConstants;
 import org.apache.rocketmq.acl.common.AclException;
@@ -44,26 +56,12 @@ import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.lang.reflect.Field;
-import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
 public class PlainAccessValidatorTest {
 
     private PlainAccessValidator plainAccessValidator;
     private AclClientRPCHook aclClient;
     private SessionCredentials sessionCredentials;
 
-
     @Before
     public void init() {
         File file = new File("src/test/resources");
@@ -429,7 +427,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void addAccessAclYamlConfigTest() throws InterruptedException {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         PlainAccessConfig plainAccessConfig = new PlainAccessConfig();
@@ -501,7 +500,8 @@ public class PlainAccessValidatorTest {
         Assert.assertEquals(verifyMap.get(AclConstants.CONFIG_ADMIN_ROLE), true);
         Assert.assertEquals(verifyMap.get(AclConstants.CONFIG_WHITE_ADDR), "192.168.1.*");
 
-        String aclFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/acl/plain_acl.yml";
+        String aclFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/acl/plain_acl.yml".replace("/", File.separator);
         Map<String, DataVersion> dataVersionMap = plainAccessValidator.getAllAclConfigVersion();
         DataVersion dataVersion = dataVersionMap.get(aclFileName);
         Assert.assertEquals(0, dataVersion.getCounter().get());
@@ -574,7 +574,8 @@ public class PlainAccessValidatorTest {
         Assert.assertEquals(((List) verifyMap.get(AclConstants.CONFIG_TOPIC_PERMS)).size(), 2);
         Assert.assertEquals(((List) verifyMap.get(AclConstants.CONFIG_GROUP_PERMS)).size(), 2);
 
-        String aclFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String aclFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> readableMap = AclUtils.getYamlDataObject(aclFileName, Map.class);
         List<Map<String, Object>> dataVersions = (List<Map<String, Object>>) readableMap.get(AclConstants.CONFIG_DATA_VERSION);
         Assert.assertEquals(2, dataVersions.get(0).get(AclConstants.CONFIG_COUNTER));
@@ -584,7 +585,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void deleteAccessAclYamlConfigTest() throws InterruptedException {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         PlainAccessConfig plainAccessConfig = new PlainAccessConfig();
@@ -631,7 +633,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void updateGlobalWhiteRemoteAddressesTest() throws InterruptedException {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         List<String> globalWhiteAddrsList = new ArrayList<>();
@@ -640,7 +643,8 @@ public class PlainAccessValidatorTest {
         PlainAccessValidator plainAccessValidator = new PlainAccessValidator();
         Assert.assertEquals(plainAccessValidator.updateGlobalWhiteAddrsConfig(globalWhiteAddrsList), true);
 
-        String aclFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String aclFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> readableMap = AclUtils.getYamlDataObject(aclFileName, Map.class);
         List<Map<String, Object>> dataVersions = (List<Map<String, Object>>) readableMap.get(AclConstants.CONFIG_DATA_VERSION);
         Assert.assertEquals(1, dataVersions.get(0).get(AclConstants.CONFIG_COUNTER));
@@ -649,7 +653,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void addYamlConfigTest() throws IOException, InterruptedException {
-        String fileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/acl/plain_acl_test.yml";
+        String fileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/acl/plain_acl_test.yml".replace("/", File.separator);
         File transport = new File(fileName);
         transport.delete();
         transport.createNewFile();
@@ -689,7 +694,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void updateAccessAnotherAclYamlConfigTest() throws IOException, InterruptedException {
-        String fileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/acl/plain_acl_test.yml";
+        String fileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/acl/plain_acl_test.yml".replace("/", File.separator);
         File transport = new File(fileName);
         transport.delete();
         transport.createNewFile();
@@ -745,7 +751,8 @@ public class PlainAccessValidatorTest {
 
     @Test(expected = AclException.class)
     public void createAndUpdateAccessAclNullSkExceptionTest() {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/acl/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/acl/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         PlainAccessConfig plainAccessConfig = new PlainAccessConfig();
@@ -761,7 +768,8 @@ public class PlainAccessValidatorTest {
     @Test
     public void addAccessDefaultAclYamlConfigTest() throws InterruptedException {
         PlainAccessValidator plainAccessValidator = new PlainAccessValidator();
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         PlainAccessConfig plainAccessConfig = new PlainAccessConfig();
@@ -798,7 +806,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void deleteAccessAnotherAclYamlConfigTest() throws IOException, InterruptedException {
-        String fileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/acl/plain_acl_test.yml";
+        String fileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/acl/plain_acl_test.yml".replace("/", File.separator);
         File transport = new File(fileName);
         transport.delete();
         transport.createNewFile();
@@ -851,7 +860,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void updateAccessConfigEmptyPermListTest() {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         PlainAccessValidator plainAccessValidator = new PlainAccessValidator();
@@ -879,7 +889,8 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void updateAccessConfigEmptyWhiteRemoteAddressTest() {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/plain_acl.yml";
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/plain_acl.yml".replace("/", File.separator);
         Map<String, Object> backUpAclConfigMap = AclUtils.getYamlDataObject(targetFileName, Map.class);
 
         PlainAccessValidator plainAccessValidator = new PlainAccessValidator();
@@ -908,7 +919,7 @@ public class PlainAccessValidatorTest {
     @Test
     public void deleteAccessAclToEmptyTest() {
         final String bakAclFileProp = System.getProperty("rocketmq.acl.plain.file");
-        System.setProperty("rocketmq.acl.plain.file", "conf/empty.yml");
+        System.setProperty("rocketmq.acl.plain.file", "conf/empty.yml".replace("/", File.separator));
         PlainAccessConfig plainAccessConfig = new PlainAccessConfig();
         plainAccessConfig.setAccessKey("deleteAccessAclToEmpty");
         plainAccessConfig.setSecretKey("12345678");
@@ -926,8 +937,9 @@ public class PlainAccessValidatorTest {
 
     @Test
     public void testValidateAfterUpdateAccessConfig() throws NoSuchFieldException, IllegalAccessException {
-        String targetFileName = System.getProperty("rocketmq.home.dir") + File.separator + "conf/update.yml";
-        System.setProperty("rocketmq.acl.plain.file", "conf/update.yml");
+        String targetFileName = System.getProperty("rocketmq.home.dir")
+            + File.separator + "conf/update.yml".replace("/", File.separator);
+        System.setProperty("rocketmq.acl.plain.file", "conf/update.yml".replace("/", File.separator));
         PlainAccessValidator plainAccessValidator = new PlainAccessValidator();
         PlainAccessConfig plainAccessConfig = new PlainAccessConfig();
         String accessKey = "updateAccessConfig";
@@ -963,7 +975,7 @@ public class PlainAccessValidatorTest {
             e.printStackTrace();
             Assert.fail("Should not throw IOException");
         } finally {
-            System.setProperty("rocketmq.acl.plain.file", "conf/plain_acl.yml");
+            System.setProperty("rocketmq.acl.plain.file", "conf/plain_acl.yml".replace("/", File.separator));
         }
     }
 }