Increase code coverage for auth misc
[aaf/authz.git] / misc / xgen / src / test / java / org / onap / aaf / misc / xgen / html / JU_JSGenTest.java
diff --git a/misc/xgen/src/test/java/org/onap/aaf/misc/xgen/html/JU_JSGenTest.java b/misc/xgen/src/test/java/org/onap/aaf/misc/xgen/html/JU_JSGenTest.java
new file mode 100644 (file)
index 0000000..8bf811b
--- /dev/null
@@ -0,0 +1,214 @@
+/**\r
+ * ============LICENSE_START====================================================\r
+ * org.onap.aaf\r
+ * ===========================================================================\r
+ * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.\r
+ * ===========================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END====================================================\r
+ *\r
+ */\r
+\r
+package org.onap.aaf.misc.xgen.html;\r
+\r
+import static org.junit.Assert.fail;\r
+import static org.mockito.Matchers.any;\r
+import static org.mockito.Mockito.times;\r
+import static org.mockito.Mockito.verify;\r
+import static org.mockito.Mockito.when;\r
+\r
+import java.io.IOException;\r
+\r
+import org.junit.Before;\r
+import org.junit.Test;\r
+import org.mockito.Mock;\r
+import org.mockito.MockitoAnnotations;\r
+import org.onap.aaf.misc.env.util.IndentPrintWriter;\r
+import org.onap.aaf.misc.xgen.Back;\r
+import org.onap.aaf.misc.xgen.Mark;\r
+\r
+public class JU_JSGenTest {\r
+\r
+       @Mock\r
+       private HTMLGen hg;\r
+       @Mock\r
+       private Mark mark;\r
+       @Mock\r
+       private IndentPrintWriter writer;\r
+       @Mock\r
+       private Mark jm;\r
+\r
+       @Before\r
+       public void setup() {\r
+               MockitoAnnotations.initMocks(this);\r
+       }\r
+\r
+       @Test\r
+       public void testFileNotFoundException() {\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               try {\r
+                       gen.inline("JSScript", 2);\r
+                       fail("This file should not be found.");\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void testJSRead() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.inline("./sampletest.js", 2);\r
+\r
+               verify(writer).print("function myFunction() {");\r
+               verify(writer).print("document.getElementById(\"demo\").innerHTML = \"Paragraph changed.\";");\r
+               verify(writer).print("}");\r
+               verify(writer, times(0)).println();\r
+       }\r
+\r
+       @Test\r
+       public void testJSReadPrettyPrint() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               hg.pretty = true;\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.inline("./sampletest.js", 2);\r
+\r
+               verify(writer).print("function myFunction() {");\r
+               verify(writer).print("document.getElementById(\"demo\").innerHTML = \"Paragraph changed.\";");\r
+               verify(writer).print("}");\r
+               verify(writer, times(3)).println();\r
+               verify(hg).setIndent(0);\r
+       }\r
+\r
+       @Test\r
+       public void testPst() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               when(hg.pushBack(any(Back.class))).thenReturn(3);\r
+               hg.pretty = true;\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.pst("line 1", "line 2");\r
+\r
+               verify(writer).append('(');\r
+               verify(writer).append("line 1");\r
+               verify(writer).print("line 2");\r
+               verify(writer, times(1)).print(", ");\r
+       }\r
+\r
+       @Test\r
+       public void testPstWithMark() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               when(hg.pushBack(any(Back.class))).thenReturn(3);\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.pst(jm, "line 1", "line 2");\r
+\r
+               verify(writer).append('(');\r
+               verify(writer).append("line 1");\r
+               verify(writer).print("line 2");\r
+               verify(writer, times(1)).print(", ");\r
+       }\r
+\r
+       @Test\r
+       public void testPstWithNoLines() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               when(hg.pushBack(any(Back.class))).thenReturn(3);\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.pst(jm);\r
+\r
+               verify(writer).append('(');\r
+       }\r
+\r
+       @Test\r
+       public void testLi() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               when(writer.getIndent()).thenReturn(3);\r
+\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.li("line 1", "line 2");\r
+\r
+               verify(writer).setIndent(3);\r
+               verify(writer).inc();\r
+               verify(writer).println();\r
+               verify(writer).print("line 1");\r
+               verify(writer).print("line 2");\r
+\r
+               hg.pretty = true;\r
+               gen.li("line 1", "line 2");\r
+               verify(writer, times(3)).println();\r
+       }\r
+\r
+       @Test\r
+       public void testText() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               hg.pretty = true;\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.text("line 1");\r
+\r
+               verify(writer).append("line 1");\r
+               verify(writer).println();\r
+\r
+               hg.pretty = false;\r
+               gen.text("line 1");\r
+\r
+               verify(writer, times(2)).append("line 1");\r
+       }\r
+\r
+       @Test\r
+       public void testFunction() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               when(hg.pushBack(any(Back.class))).thenReturn(3);\r
+               hg.pretty = true;\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.function("line 1", "line 2", "line 3");\r
+\r
+               verify(writer).print("function ");\r
+               verify(writer).print("line 1");\r
+               verify(writer).print('(');\r
+\r
+               verify(writer).print("line 2");\r
+               verify(writer).print("line 3");\r
+               verify(writer, times(1)).print(", ");\r
+               verify(writer).print(") {");\r
+               verify(writer).inc();\r
+               verify(writer).println();\r
+       }\r
+\r
+       @Test\r
+       public void testFunctionWithMark() throws IOException {\r
+               when(hg.getWriter()).thenReturn(writer);\r
+               when(hg.pushBack(any(Back.class))).thenReturn(3);\r
+               JSGen gen = new JSGen(mark, hg);\r
+\r
+               gen.function(jm, "line 1", "line 2", "line 3");\r
+\r
+               verify(writer).print("function ");\r
+               verify(writer).print("line 1");\r
+               verify(writer).print('(');\r
+\r
+               verify(writer).print("line 2");\r
+               verify(writer).print("line 3");\r
+               verify(writer, times(1)).print(", ");\r
+               verify(writer).print(") {");\r
+               verify(writer, times(0)).inc();\r
+               verify(writer, times(0)).println();\r
+       }\r
+\r
+}\r