[Complete tests] Base
This commit is contained in:
parent
f4caa735b2
commit
baa7e4dd9e
3 changed files with 94 additions and 0 deletions
38
test/dev/peerat/parser/java/element/BaseElementTests.java
Normal file
38
test/dev/peerat/parser/java/element/BaseElementTests.java
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
package dev.peerat.parser.java.element;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import dev.peerat.parser.Parser;
|
||||||
|
import dev.peerat.parser.java.JavaElement;
|
||||||
|
import dev.peerat.parser.java.JavaFile;
|
||||||
|
import dev.peerat.parser.java.JavaParser;
|
||||||
|
|
||||||
|
public class BaseElementTests{
|
||||||
|
|
||||||
|
private int size;
|
||||||
|
private List<Supplier<String>> texts = new ArrayList<>();
|
||||||
|
private List<Consumer<JavaFile>> checkers = new ArrayList<>();
|
||||||
|
|
||||||
|
public void register(Supplier<String> text, Consumer<JavaFile> checker){
|
||||||
|
this.texts.add(text);
|
||||||
|
this.checkers.add(checker);
|
||||||
|
this.size++;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void main() throws Exception{
|
||||||
|
Parser<JavaElement> parser = new JavaParser();
|
||||||
|
for(int i = 0; i < size; i++){
|
||||||
|
JavaFile javaFile = new JavaFile();
|
||||||
|
parser.parse(texts.get(i).get(), javaFile);
|
||||||
|
checkers.get(i).accept(javaFile);
|
||||||
|
}
|
||||||
|
System.out.println("passed "+size+" tests");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
28
test/dev/peerat/parser/java/element/clazz/ClazzWithMod.java
Normal file
28
test/dev/peerat/parser/java/element/clazz/ClazzWithMod.java
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
package dev.peerat.parser.java.element.clazz;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
import dev.peerat.parser.java.Class;
|
||||||
|
import dev.peerat.parser.java.ClassBase;
|
||||||
|
import dev.peerat.parser.java.element.BaseElementTests;
|
||||||
|
|
||||||
|
public class ClazzWithMod extends BaseElementTests{
|
||||||
|
|
||||||
|
{
|
||||||
|
register(
|
||||||
|
() -> "package be.jeffcheasey88;"
|
||||||
|
+ ""
|
||||||
|
+ "public static final class Test{}",
|
||||||
|
(javafile) -> {
|
||||||
|
ClassBase clazzb = javafile.getMainClass();
|
||||||
|
assertNotNull(clazzb);
|
||||||
|
assertTrue(clazzb instanceof Class);
|
||||||
|
Class clazz = (Class)clazzb;
|
||||||
|
assertEquals("Test", clazz.getName().getValue());
|
||||||
|
assertEquals(0, clazz.getElements().size());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
package dev.peerat.parser.java.element.clazz;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
import dev.peerat.parser.java.Class;
|
||||||
|
import dev.peerat.parser.java.ClassBase;
|
||||||
|
import dev.peerat.parser.java.element.BaseElementTests;
|
||||||
|
|
||||||
|
public class ClazzWithoutMod extends BaseElementTests{
|
||||||
|
|
||||||
|
{
|
||||||
|
register(
|
||||||
|
() -> "package be.jeffcheasey88;"
|
||||||
|
+ ""
|
||||||
|
+ "class Test{}",
|
||||||
|
(javafile) -> {
|
||||||
|
ClassBase clazzb = javafile.getMainClass();
|
||||||
|
assertNotNull(clazzb);
|
||||||
|
assertTrue(clazzb instanceof Class);
|
||||||
|
Class clazz = (Class)clazzb;
|
||||||
|
assertEquals("Test", clazz.getName().getValue());
|
||||||
|
assertEquals(0, clazz.getElements().size());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue