56 lines
No EOL
1.9 KiB
Java
56 lines
No EOL
1.9 KiB
Java
package dev.peerat.parser.java.element.operation;
|
|
|
|
import static org.junit.Assert.assertTrue;
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
|
|
import dev.peerat.parser.java.Function;
|
|
import dev.peerat.parser.java.element.BaseElementTests;
|
|
import dev.peerat.parser.java.operation.AssignOperation;
|
|
import dev.peerat.parser.java.operation.Operation;
|
|
import dev.peerat.parser.java.value.StaticValue;
|
|
|
|
public class AssignOperationTest extends BaseElementTests{
|
|
|
|
{
|
|
register(
|
|
"package be.jeffcheasey88;"
|
|
+ ""
|
|
+ "public static class Test{ "
|
|
+ " void test(){ "
|
|
+ " int i = 3;"
|
|
+ " i = 4;"
|
|
+ "}"
|
|
+ "}",
|
|
(javafile) -> {
|
|
Function function = checkFunction(checkClass(javafile).getElements().get(0));
|
|
assertEquals(2, function.getElements().size());
|
|
checkVariable(function.getElements().get(0));
|
|
Operation op = checkOperation(function.getElements().get(1));
|
|
assertTrue(op instanceof AssignOperation);
|
|
AssignOperation assign = (AssignOperation)op;
|
|
assertEquals("i", ((StaticValue)assign.left()).getToken().getValue());
|
|
assertEquals("4", ((StaticValue)assign.right()).getToken().getValue());
|
|
});
|
|
|
|
register(
|
|
"package be.jeffcheasey88;"
|
|
+ ""
|
|
+ "public static class Test{ "
|
|
+ " void test(){ "
|
|
+ " int i = 3, j = 4;"
|
|
+ " i = j;"
|
|
+ "}"
|
|
+ "}",
|
|
(javafile) -> {
|
|
Function function = checkFunction(checkClass(javafile).getElements().get(0));
|
|
assertEquals(3, function.getElements().size());
|
|
checkVariable(function.getElements().get(0));
|
|
checkVariable(function.getElements().get(1));
|
|
Operation op = checkOperation(function.getElements().get(2));
|
|
assertTrue(op instanceof AssignOperation);
|
|
AssignOperation assign = (AssignOperation)op;
|
|
assertEquals("i", ((StaticValue)assign.left()).getToken().getValue());
|
|
assertEquals("j", ((StaticValue)assign.right()).getToken().getValue());
|
|
});
|
|
}
|
|
} |