******************************************************************************/
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.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;
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);
-
+ CmdLine.setSystemExit(false);
+ keyfile = "src/test/resources/keyfile";
password = "password";
- keyfile = "test/keyfile";
- FileInputStream fis = new FileInputStream(keyfile);
+ File keyF = new File("src/test/resources", "keyfile");
+ FileInputStream fis = new FileInputStream(keyF);
try {
symm = Symm.obtain(fis);
} finally {
@After
public void restoreStreams() throws IOException {
- System.setOut(System.out);
- System.setIn(System.in);
+ System.setOut(System.out);
+ System.setIn(System.in);
}
@Test
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});
public void decode64Test() throws Exception {
String encrypted = Symm.base64.encode(password);
CmdLine.main(new String[]{"decode64", encrypted});
- assertThat(outContent.toString(), is(password + "\n"));
+ assertThat(outContent.toString(), is(password + System.lineSeparator()));
}
@Test
public void decode64urlTest() throws Exception {
String encrypted = Symm.base64url.encode(password);
CmdLine.main(new String[]{"decode64url", encrypted});
- assertThat(outContent.toString(), is(password + "\n"));
+ assertThat(outContent.toString(), is(password + System.lineSeparator()));
}
@Test
public void md5Test() throws Exception {
CmdLine.main(new String[]{"md5", quickBrownFoxPlain});
- assertThat(outContent.toString(), is(quickBrownFoxMD5 + "\n"));
+ assertThat(outContent.toString(), is(quickBrownFoxMD5 + System.lineSeparator()));
}
@Test
public void sha256Test() throws Exception {
CmdLine.main(new String[]{"sha256", quickBrownFoxPlain});
- assertThat(outContent.toString(), is(quickBrownFoxSHA256 + "\n"));
+ assertThat(outContent.toString(), is(quickBrownFoxSHA256 + System.lineSeparator()));
outContent.reset();
CmdLine.main(new String[]{"sha256", quickBrownFoxPlain, "10"});
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)));
assertFalse(Files.isWritable(Paths.get(filePath)));
- assertFalse(Files.isExecutable(Paths.get(filePath)));
+ //assertFalse(Files.isExecutable(Paths.get(filePath)));
keyfile.delete();
}
@Test
public void showHelpTest() {
- String expected =
- "Usage: java -jar <this jar> ...\n" +
- " keygen [<keyfile>] (Generates Key on file, or Std Out)\n" +
- " digest [<passwd>|-i|] <keyfile> (Encrypts Password with \"keyfile\"\n" +
- " if passwd = -i, will read StdIin\n" +
- " if passwd is blank, will ask securely)\n" +
- " passgen <digits> (Generate Password of given size)\n" +
- " urlgen <digits> (Generate URL field of given size)\n" +
- " csptest (Tests for CSP compatibility)\n" +
- " encode64 <your text> (Encodes to Base64)\n" +
- " decode64 <base64 encoded text> (Decodes from Base64)\n" +
- " encode64url <your text> (Encodes to Base64 URL charset)\n" +
- " decode64url <base64url encoded text> (Decodes from Base64 URL charset)\n" +
- " sha256 <text> <salts(s)> (Digest String into SHA256 Hash)\n" +
- " md5 <text> (Digest String into MD5 Hash)\n";
+ String lineSeparator = System.lineSeparator();
+ String expected =
+ "Usage: java -jar <this jar> ..." + lineSeparator +
+ " keygen [<keyfile>] (Generates Key on file, or Std Out)" + lineSeparator +
+ " digest [<passwd>|-i|] <keyfile> (Encrypts Password with \"keyfile\"" + lineSeparator +
+ " if passwd = -i, will read StdIn" + lineSeparator +
+ " if passwd is blank, will ask securely)" + lineSeparator +
+ " passgen <digits> (Generate Password of given size)" + lineSeparator +
+ " urlgen <digits> (Generate URL field of given size)" + lineSeparator +
+ " encode64 <your text> (Encodes to Base64)" + lineSeparator +
+ " decode64 <base64 encoded text> (Decodes from Base64)" + lineSeparator +
+ " encode64url <your text> (Encodes to Base64 URL charset)" + lineSeparator +
+ " decode64url <base64url encoded text> (Decodes from Base64 URL charset)" + lineSeparator +
+ " sha256 <text> <salts(s)> (Digest String into SHA256 Hash)" + lineSeparator +
+ " md5 <text> (Digest String into MD5 Hash)" + lineSeparator;
CmdLine.main(new String[]{});