Test coverage and refactor for GeneratorUtil 95/55495/4
authorAdam Wudzinski <adam.wudzinski@nokia.com>
Wed, 27 Jun 2018 14:53:30 +0000 (16:53 +0200)
committerawudzins <adam.wudzinski@nokia.com>
Thu, 5 Jul 2018 14:47:10 +0000 (16:47 +0200)
Added tests and made GeneratorUtil final class

Change-Id: I3e9b3fa22dff5c50fa37ad10ba0ddd8b9bbef2d9
Issue-ID: AAI-1334
Signed-off-by: awudzins <adam.wudzinski@nokia.com>
src/main/java/org/onap/aai/babel/xml/generator/data/GeneratorUtil.java
src/test/java/org/onap/aai/babel/xml/generator/model/TestGeneratorUtil.java [new file with mode: 0644]

index 2405d4d..69a4c43 100644 (file)
@@ -24,14 +24,12 @@ import java.util.Base64;
 import org.apache.commons.codec.digest.DigestUtils;
 
 /** Utility method class for artifact generation. */
-public class GeneratorUtil {
+public final class GeneratorUtil {
 
     /*
      * Private constructor to prevent instantiation
      */
-    private GeneratorUtil() {
-        throw new UnsupportedOperationException("This static class should not be instantiated!");
-    }
+    private GeneratorUtil() {}
 
     /**
      * Decodes Base64 encode byte array input.
@@ -39,7 +37,7 @@ public class GeneratorUtil {
      * @param input Base64 encoded byte array
      * @return Decoded byte array
      */
-    public static byte[] decoder(byte[] input) {
+    public static byte[] decode(byte[] input) {
         return input != null ? Base64.getDecoder().decode(input) : new byte[0];
     }
 
diff --git a/src/test/java/org/onap/aai/babel/xml/generator/model/TestGeneratorUtil.java b/src/test/java/org/onap/aai/babel/xml/generator/model/TestGeneratorUtil.java
new file mode 100644 (file)
index 0000000..151d7c9
--- /dev/null
@@ -0,0 +1,80 @@
+/**
+ * ============LICENSE_START=======================================================
+ * org.onap.aai
+ * ================================================================================
+ * Copyright © 2017-2018 Nokia Networks Intellectual Property. All rights reserved.
+ * ================================================================================
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.aai.babel.xml.generator.model;
+
+import static org.hamcrest.core.Is.is;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertThat;
+
+import java.util.Base64;
+import org.junit.Test;
+import org.onap.aai.babel.xml.generator.data.GeneratorUtil;
+
+public class TestGeneratorUtil {
+
+    private static final byte[] TEST_BYTES = "TestBytes".getBytes();
+    private static final byte[] EMPTY_BYTE_ARRAY = new byte[0];
+
+    @Test
+    public void shouldEncodeUsingBase64() {
+        byte[] expected = Base64.getEncoder().encode(TEST_BYTES);
+
+        byte[] result = GeneratorUtil.encode(TEST_BYTES);
+
+        assertThat(result, is(expected));
+    }
+
+    @Test
+    public void shouldReturnEmptyByteArrayWhenNullPassedToEncode() {
+        byte[] result = GeneratorUtil.encode(null);
+
+        assertThat(result, is(EMPTY_BYTE_ARRAY));
+    }
+
+    @Test
+    public void shouldDecodeUsingBase64() {
+        byte[] input = Base64.getEncoder().encode(TEST_BYTES);
+        byte[] expected = Base64.getDecoder().decode(input);
+
+        byte[] result = GeneratorUtil.decode(input);
+
+        assertThat(result, is(expected));
+    }
+
+    @Test
+    public void shouldReturnEmptyByteArrayWhenNullPassedToDecode() {
+        byte[] result = GeneratorUtil.decode(null);
+
+        assertThat(result, is(EMPTY_BYTE_ARRAY));
+    }
+
+    @Test
+    public void shouldReturnNullWhenNullPassedToCheckSum() {
+        assertNull(GeneratorUtil.checkSum(null));
+    }
+
+    @Test
+    public void shouldReturnSameCheckSumForIdenticalInput() {
+        String checkSum1 = GeneratorUtil.checkSum(TEST_BYTES);
+        String checkSum2 = GeneratorUtil.checkSum(TEST_BYTES);
+
+        assertThat(checkSum1, is(checkSum2));
+    }
+}