package spoon.test.intercession; import static org.junit.Assert.assertEquals; import static spoon.testing.utils.ModelUtils.createFactory; import org.junit.Test; import spoon.reflect.code.CtBlock; import spoon.reflect.code.CtStatement; import spoon.reflect.declaration.CtClass; import spoon.reflect.declaration.CtMethod; import spoon.reflect.factory.Factory; public class RemoveTest { @Test public void testRemoveAllStatements() { Factory factory = createFactory(); CtClass<?> clazz = factory .Code() .createCodeSnippetStatement( "" + "class X {" + "public void foo() {" + " int x=0;int y=0;" + "}};") .compile(); CtMethod<?> foo = (CtMethod<?>) clazz.getMethods().toArray()[0]; CtBlock<?> body = foo.getBody(); assertEquals(2,body.getStatements().size()); for (CtStatement s : body) { body.removeStatement(s); } assertEquals(0,body.getStatements().size()); } }