From 4b53d0d135fcacc5964b2720678642f182fd15d1 Mon Sep 17 00:00:00 2001 From: Bjørn Christian Seime Date: Fri, 29 Jul 2022 14:54:15 +0200 Subject: Convert configgen to junit5 --- .../yahoo/config/codegen/JavaClassBuilderTest.java | 102 +++++++++++---------- 1 file changed, 52 insertions(+), 50 deletions(-) (limited to 'configgen/src/test/java/com/yahoo/config/codegen/JavaClassBuilderTest.java') diff --git a/configgen/src/test/java/com/yahoo/config/codegen/JavaClassBuilderTest.java b/configgen/src/test/java/com/yahoo/config/codegen/JavaClassBuilderTest.java index e6e86b2c2a3..69a690b0e82 100644 --- a/configgen/src/test/java/com/yahoo/config/codegen/JavaClassBuilderTest.java +++ b/configgen/src/test/java/com/yahoo/config/codegen/JavaClassBuilderTest.java @@ -1,8 +1,8 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.codegen; -import org.junit.Ignore; -import org.junit.Test; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; import java.io.IOException; import java.io.StringReader; @@ -12,9 +12,7 @@ import java.util.List; import static com.yahoo.config.codegen.ConfiggenUtil.createClassName; import static com.yahoo.config.codegen.JavaClassBuilder.createUniqueSymbol; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; +import static org.junit.jupiter.api.Assertions.*; /** * @author gjoranv @@ -26,44 +24,44 @@ public class JavaClassBuilderTest { private static final String DEF_NAME = TEST_DIR + "configgen.allfeatures.def"; private static final String REFERENCE_NAME = TEST_DIR + "allfeatures.reference"; - @Ignore + @Disabled @Test - public void visual_inspection_of_generated_class() { + void visual_inspection_of_generated_class() { final String testDefinition = "namespace=test\n" + // - "p path\n" + // - "pathArr[] path\n" + // - "u url\n" + // - "urlArr[] url\n" + // - "f file\n" + // - "fileArr[] file\n" + // - "i int default=0\n" + // - "# A long value\n" + // - "l long default=0\n" + // - "s string default=\"\"\n" + // - "b bool\n" + // - "# An enum value\n" + // - "e enum {A, B, C}\n" + // - "intArr[] int\n" + // - "boolArr[] bool\n" + // - "enumArr[] enum {FOO, BAR}\n" + // - "intMap{} int\n" + // - "# A struct\n" + // - "# with multi-line\n" + // - "# comment and \"quotes\".\n" + // - "myStruct.i int\n" + // - "myStruct.s string\n" + // - "# An inner array\n" + // - "myArr[].i int\n" + // - "myArr[].newStruct.s string\n" + // - "myArr[].newStruct.b bool\n" + // - "myArr[].intArr[] int\n" + // - "# An inner map\n" + // - "myMap{}.i int\n" + // - "myMap{}.newStruct.s string\n" + // - "myMap{}.newStruct.b bool\n" + // - "myMap{}.intArr[] int\n" + // - "intMap{} int\n"; + "p path\n" + // + "pathArr[] path\n" + // + "u url\n" + // + "urlArr[] url\n" + // + "f file\n" + // + "fileArr[] file\n" + // + "i int default=0\n" + // + "# A long value\n" + // + "l long default=0\n" + // + "s string default=\"\"\n" + // + "b bool\n" + // + "# An enum value\n" + // + "e enum {A, B, C}\n" + // + "intArr[] int\n" + // + "boolArr[] bool\n" + // + "enumArr[] enum {FOO, BAR}\n" + // + "intMap{} int\n" + // + "# A struct\n" + // + "# with multi-line\n" + // + "# comment and \"quotes\".\n" + // + "myStruct.i int\n" + // + "myStruct.s string\n" + // + "# An inner array\n" + // + "myArr[].i int\n" + // + "myArr[].newStruct.s string\n" + // + "myArr[].newStruct.b bool\n" + // + "myArr[].intArr[] int\n" + // + "# An inner map\n" + // + "myMap{}.i int\n" + // + "myMap{}.newStruct.s string\n" + // + "myMap{}.newStruct.b bool\n" + // + "myMap{}.intArr[] int\n" + // + "intMap{} int\n"; DefParser parser = new DefParser("test", new StringReader(testDefinition)); InnerCNode root = parser.getTree(); @@ -73,11 +71,11 @@ public class JavaClassBuilderTest { } @Test - public void testCreateUniqueSymbol() { + void testCreateUniqueSymbol() { final String testDefinition = "namespace=test\n" + // - "m int\n" + // - "n int\n"; + "m int\n" + // + "n int\n"; InnerCNode root = new DefParser("test", new StringReader(testDefinition)).getTree(); assertEquals("f", createUniqueSymbol(root, "foo")); @@ -90,7 +88,7 @@ public class JavaClassBuilderTest { } @Test - public void testCreateClassName() { + void testCreateClassName() { assertEquals("SimpleConfig", createClassName("simple")); assertEquals("AConfig", createClassName("a")); assertEquals("ABCConfig", createClassName("a-b-c")); @@ -99,13 +97,15 @@ public class JavaClassBuilderTest { assertEquals("MyAppConfig", createClassName("MyApp")); } - @Test(expected = CodegenRuntimeException.class) - public void testIllegalClassName() { - createClassName("+illegal"); + @Test + void testIllegalClassName() { + assertThrows(CodegenRuntimeException.class, () -> { + createClassName("+illegal"); + }); } @Test - public void verify_generated_class_against_reference() throws IOException { + void verify_generated_class_against_reference() throws IOException { String testDefinition = String.join("\n", Files.readAllLines(FileSystems.getDefault().getPath(DEF_NAME))); List referenceClassLines = Files.readAllLines(FileSystems.getDefault().getPath(REFERENCE_NAME)); @@ -114,11 +114,13 @@ public class JavaClassBuilderTest { JavaClassBuilder builder = new JavaClassBuilder(root, parser.getNormalizedDefinition(), null, null); String[] configClassLines = builder.getConfigClass("AllfeaturesConfig").split("\n"); - for (var line : configClassLines) { System.out.println(line); } + for (var line : configClassLines) { + System.out.println(line); + } for (int i = 0; i < referenceClassLines.size(); i++) { if (configClassLines.length <= i) fail("Missing lines i generated config class. First missing line:\n" + referenceClassLines.get(i)); - assertEquals("Line " + i, referenceClassLines.get(i), configClassLines[i]); + assertEquals(referenceClassLines.get(i), configClassLines[i], "Line " + i); } } -- cgit v1.2.3