peer-at-code-parser-java/test/dev/peerat/parser/java/element/variable/VariableInMethod.java
2024-02-02 15:04:39 +01:00

164 lines
No EOL
5.6 KiB
Java

package dev.peerat.parser.java.element.variable;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.List;
import dev.peerat.parser.java.Class;
import dev.peerat.parser.java.Function;
import dev.peerat.parser.java.JavaElement;
import dev.peerat.parser.java.Variable;
import dev.peerat.parser.java.element.BaseElementTests;
public class VariableInMethod extends BaseElementTests{
{
register(
() -> "package be.jeffcheasey88;"
+ ""
+ "public static final class Test{ "
+ " void test(){"
+ " int i;"
+ "}"
+ "}",
(javafile) -> {
Class clazz = checkClass(javafile);
List<JavaElement> elements = clazz.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Function function = checkFunction(elements.get(0));
elements = function.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Variable variable = checkVariable(elements.get(0));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("i", variable.getName().getValue());
assertNull(variable.getValue());
});
register(
() -> "package be.jeffcheasey88;"
+ ""
+ "public static final class Test{ "
+ " void test(){"
+ " int i = 4;"
+ "}"
+ "}",
(javafile) -> {
Class clazz = checkClass(javafile);
List<JavaElement> elements = clazz.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Function function = checkFunction(elements.get(0));
elements = function.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Variable variable = checkVariable(elements.get(0));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("i", variable.getName().getValue());
assertEquals("4", variable.getValue().getToken().getValue());
});
register(
() -> "package be.jeffcheasey88;"
+ ""
+ "public static final class Test{ "
+ " void test(){"
+ " int i = 4, j;"
+ "}"
+ "}",
(javafile) -> {
Class clazz = checkClass(javafile);
List<JavaElement> elements = clazz.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Function function = checkFunction(elements.get(0));
elements = function.getElements();
assertNotNull(elements);
assertEquals(2, elements.size());
Variable variable = checkVariable(elements.get(0));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("i", variable.getName().getValue());
assertEquals("4", variable.getValue().getToken().getValue());
variable = checkVariable(elements.get(1));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("j", variable.getName().getValue());
assertNull(variable.getValue());
});
register(
() -> "package be.jeffcheasey88;"
+ ""
+ "public static final class Test{ "
+ " void test(){"
+ " int i = 4, j = 6;"
+ "}"
+ "}",
(javafile) -> {
Class clazz = checkClass(javafile);
List<JavaElement> elements = clazz.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Function function = checkFunction(elements.get(0));
elements = function.getElements();
assertNotNull(elements);
assertEquals(2, elements.size());
Variable variable = checkVariable(elements.get(0));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("i", variable.getName().getValue());
assertEquals("4", variable.getValue().getToken().getValue());
variable = checkVariable(elements.get(1));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("j", variable.getName().getValue());
assertEquals("6", variable.getValue().getToken().getValue());
});
register(
() -> "package be.jeffcheasey88;"
+ ""
+ "public static final class Test{ "
+ " void test(){"
+ " int i = 4, j = 6;"
+ " List<String> list;"
+ "}"
+ "}",
(javafile) -> {
Class clazz = checkClass(javafile);
List<JavaElement> elements = clazz.getElements();
assertNotNull(elements);
assertEquals(1, elements.size());
Function function = checkFunction(elements.get(0));
elements = function.getElements();
assertNotNull(elements);
assertEquals(3, elements.size());
Variable variable = checkVariable(elements.get(0));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("i", variable.getName().getValue());
assertEquals("4", variable.getValue().getToken().getValue());
variable = checkVariable(elements.get(1));
assertEquals(0, variable.getModifier());
assertEquals("int", variable.getType().getValue());
assertEquals("j", variable.getName().getValue());
assertEquals("6", variable.getValue().getToken().getValue());
variable = checkVariable(elements.get(2));
assertEquals(0, variable.getModifier());
assertEquals("List<String>", variable.getType().getValue());
assertEquals("list", variable.getName().getValue());
assertNull(variable.getValue());
});
}
}