From 8ebd71ed51786d84d9b3cadae421db409a719034 Mon Sep 17 00:00:00 2001 From: Ittay Stern Date: Thu, 7 Mar 2019 11:47:30 +0200 Subject: Fix JettyObfuscationConversionCommandLineUtilTest Issue-ID: VID-431 Change-Id: Ib2e4559925816fad5ad39985d1abda298cd3d165 Signed-off-by: Ittay Stern --- ...tyObfuscationConversionCommandLineUtilTest.java | 55 +++++++++++++++++----- 1 file changed, 42 insertions(+), 13 deletions(-) (limited to 'vid-app-common/src/test') diff --git a/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java b/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java index 98be994fa..e06805cc1 100644 --- a/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java +++ b/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java @@ -7,9 +7,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -20,23 +20,52 @@ package org.onap.aai.util; +import static org.mockito.ArgumentMatchers.contains; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.verify; + +import java.io.PrintStream; +import java.util.Arrays; import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.junit.runners.Parameterized.Parameters; import org.onap.vid.aai.util.JettyObfuscationConversionCommandLineUtil; +@RunWith(Parameterized.class) public class JettyObfuscationConversionCommandLineUtilTest { - private JettyObfuscationConversionCommandLineUtil createTestSubject() { - return new JettyObfuscationConversionCommandLineUtil(); - } + final String[] args; + final String expected; + + public JettyObfuscationConversionCommandLineUtilTest(String description, String[] args, String expected) { + this.args = args; + this.expected = expected; + } - - @Test - public void testMain() throws Exception { - String[] args = new String[] { "" }; + @Parameters(name = "{0}") + public static Iterable data() { + return Arrays.asList(new Object[][]{ + {"print usage on missing params", new String[]{}, "usage:"}, + {"obfuscate", new String[]{"-e", "foobar"}, "OBF:1vub1ua51uh81ugi1u9d1vuz"}, + {"deobfuscate", new String[]{"-d", "OBF:1vub1ua51uh81ugi1u9d1vuz"}, "foobar"}, + {"input parse exception", new String[]{"mm", "-mm", "-mm"}, "failed to parse input"}, + {"deobfuscate exception", new String[]{"-d", "problematic string"}, + "exception:java.lang.NumberFormatException"}, + }); + } - // default test - JettyObfuscationConversionCommandLineUtil.main(args); - } + @Test + public void testMain() { + final PrintStream originalOut = System.out; + try { + PrintStream mockedOut = mock(PrintStream.class); + System.setOut(mockedOut); + JettyObfuscationConversionCommandLineUtil.main(args); + verify(mockedOut).println(contains(expected)); + } finally { + System.setOut(originalOut); + } + } - } -- cgit 1.2.3-korg