RANGER-274 : unit test fix in cleanup in tagFileStore

Signed-off-by: Madhan Neethiraj <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/1b3e6c6d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/1b3e6c6d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/1b3e6c6d

Branch: refs/heads/tag-policy
Commit: 1b3e6c6dfd3b5aa844aed84f9ba50aa1a15a2a00
Parents: efd317f
Author: Abhay Kulkarni <[email protected]>
Authored: Sat Oct 31 11:30:26 2015 -0700
Committer: Madhan Neethiraj <[email protected]>
Committed: Sat Oct 31 21:44:03 2015 -0700

----------------------------------------------------------------------
 .../ranger/plugin/store/TestTagStore.java       | 51 +++++++++++---------
 1 file changed, 27 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/1b3e6c6d/agents-common/src/test/java/org/apache/ranger/plugin/store/TestTagStore.java
----------------------------------------------------------------------
diff --git 
a/agents-common/src/test/java/org/apache/ranger/plugin/store/TestTagStore.java 
b/agents-common/src/test/java/org/apache/ranger/plugin/store/TestTagStore.java
index 1bf35c6..aaace89 100644
--- 
a/agents-common/src/test/java/org/apache/ranger/plugin/store/TestTagStore.java
+++ 
b/agents-common/src/test/java/org/apache/ranger/plugin/store/TestTagStore.java
@@ -21,17 +21,13 @@ package org.apache.ranger.plugin.store;
 
 import static org.junit.Assert.*;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
+import java.io.*;
 import java.util.*;
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.*;
 import org.apache.ranger.authorization.hadoop.config.RangerConfiguration;
 import org.apache.ranger.plugin.model.*;
 import org.apache.ranger.plugin.model.RangerPolicy.RangerPolicyResource;
@@ -51,21 +47,15 @@ public class TestTagStore {
        static RangerService service = null;
        static SearchFilter filter = null;
 
-       static String tmpDir = null;
-       static Path filePath = null;
-
-       static Configuration config = new Configuration();
-
        static final String serviceDefJsonFile = 
"/admin/service-defs/test-hive-servicedef.json";
        static final String serviceName = "tag-unit-test-TestTagStore";
+       static File tagStoreDir = null;
 
        static Gson gsonBuilder = null;
 
        @BeforeClass
        public static void setupTest() throws Exception {
 
-               tmpDir = "file://" + System.getProperty("java.io.tmpdir");
-
                String textTemplate = "<configuration>\n" +
                                "        <property>\n" +
                                "                
<name>ranger.tag.store.file.dir</name>\n" +
@@ -77,20 +67,28 @@ public class TestTagStore {
                                "        </property>\n" +
                                "</configuration>\n";
 
-               String text = String.format(textTemplate, tmpDir, tmpDir);
+               File file = File.createTempFile("ranger-admin-test-site", 
".xml") ;
+               file.deleteOnExit();
+
+               tagStoreDir = File.createTempFile("tagStore", "dir") ;
+
+               if (tagStoreDir.exists()) {
+                       tagStoreDir.delete() ;
+               }
+
+               tagStoreDir.mkdirs() ;
 
-               String fileName =  tmpDir + "/ranger-admin-test-site.xml";
-               filePath = new Path(fileName);
-               FileSystem fs = filePath.getFileSystem(config);
+               String tagStoreDirName =  tagStoreDir.getAbsolutePath() ;
 
-               FSDataOutputStream outStream = fs.create(filePath, true);
+               String text = String.format(textTemplate, tagStoreDirName, 
tagStoreDirName);
 
+               FileOutputStream outStream = new FileOutputStream(file);
                OutputStreamWriter writer = new OutputStreamWriter(outStream);
                writer.write(text);
                writer.close();
 
                RangerConfiguration config = RangerConfiguration.getInstance();
-               config.addResource(filePath);
+               config.addResource(new org.apache.hadoop.fs.Path(file.toURI()));
 
                ServiceStore svcStore = new ServiceFileStore();
                svcStore.init();
@@ -120,17 +118,22 @@ public class TestTagStore {
 
        @AfterClass
        public static void tearDownAfterClass() throws Exception {
-
-               if (filePath != null) {
+               if (tagStoreDir != null) {
                        try {
-                               FileSystem fs = filePath.getFileSystem(config);
-
-                               fs.delete(filePath, true);
+                               File[] filesInTagStoreDir = 
tagStoreDir.listFiles();
+                               if (filesInTagStoreDir != null) {
+                                       for (File file : filesInTagStoreDir) {
+                                               if (file.isFile()) {
+                                                       file.delete();
+                                               }
+                                       }
+                               }
+                               tagStoreDir.delete();
+                               tagStoreDir = null;
                        } catch (Throwable t) {
                                // Ignore
                        }
                }
-
        }
 
        @Test

Reply via email to