Improve cadi-core coverage
[aaf/authz.git] / cadi / core / src / test / java / org / onap / aaf / cadi / test / JU_CmdLine.java
index b2820db..efcc1b2 100644 (file)
  ******************************************************************************/
 package org.onap.aaf.cadi.test;
 
-import static org.mockito.Matchers.*;
-import static org.junit.Assert.*;
-import static org.hamcrest.CoreMatchers.*;
-import org.junit.*;
-import org.mockito.*;
-import static org.mockito.Mockito.*;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.not;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileInputStream;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.PrintStream;
@@ -40,10 +38,13 @@ import java.nio.file.Files;
 import java.nio.file.Paths;
 import java.util.Properties;
 
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
 import org.onap.aaf.cadi.CmdLine;
-import org.onap.aaf.cadi.PropAccess;
 import org.onap.aaf.cadi.Symm;
-import org.onap.aaf.cadi.util.Chmod;
 
 public class JU_CmdLine {
 
@@ -63,35 +64,16 @@ public class JU_CmdLine {
        public void setup() throws Exception {
                MockitoAnnotations.initMocks(this);
 
-           System.setOut(new PrintStream(outContent));
+               System.setOut(new PrintStream(outContent));
 
                Properties p = new Properties();
                p.setProperty("force_exit", "false");
 
-               CmdLine.access = new PropAccess(p);
-               File test = new File("test");
-               if(test.exists()) {
-                       if(!test.isDirectory()) {
-                               test.delete();
-                               test.mkdirs();
-                       }
-               } else {
-                       test.mkdirs();
-               }
-               
-               File keyF= new File(test,"keyfile");
-               if(!keyF.exists()) {
-                       FileOutputStream fos = new FileOutputStream(keyF);
-                       try {
-                               fos.write(Symm.keygen());
-                               fos.flush();
-                       } finally {
-                               fos.close();
-                       }
-               }
-               keyfile = "test/keyfile";
+               CmdLine.setSystemExit(false);
+               keyfile = "src/test/resources/keyfile";
                password = "password";
 
+               File keyF = new File("src/test/resources", "keyfile");
                FileInputStream fis = new FileInputStream(keyF);
                try {
                        symm = Symm.obtain(fis);
@@ -102,8 +84,8 @@ public class JU_CmdLine {
        
        @After
        public void restoreStreams() throws IOException {
-           System.setOut(System.out);
-           System.setIn(System.in);
+               System.setOut(System.out);
+               System.setIn(System.in);
        }
 
        @Test
@@ -118,13 +100,6 @@ public class JU_CmdLine {
                assertThat(decrypted, is(password));
        }
 
-       // @Test
-       // public void regurgitateTest() {
-       //      // TODO: We may still want to remove the regurgitate functionality
-       //      // from the CmdLine - Ian
-       //      fail("Tests not yet implemented");
-       // }
-
        @Test
        public void encode64Test() throws Exception {
                CmdLine.main(new String[]{"encode64", password});
@@ -186,6 +161,10 @@ public class JU_CmdLine {
                assertThat(outContent.toString().length(), is(2074));
 
                String filePath = "test/output_key";
+               File testDir = new File("test");
+               if(!testDir.exists()) {
+                       testDir.mkdirs();
+               }
                CmdLine.main(new String[]{"keygen", filePath});
                File keyfile = new File(filePath);
                assertTrue(Files.isReadable(Paths.get(filePath)));