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.Operation; import dev.peerat.parser.java.element.BaseElementTests; import dev.peerat.parser.java.operation.AssignOperation; 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", assign.left().getToken().getValue()); assertEquals("4", 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", assign.left().getToken().getValue()); assertEquals("j", assign.right().getToken().getValue()); }); } }