@Override
public void processInput(String input, DeltaScenarioProcessor tester) throws Exception {
XtextResource resource = tester.get(XtextResource.class);
resource.setURI(URI.createURI("dummy.uri"));
try {
resource.load(new StringInputStream(input, "UTF-8"), Collections.singletonMap(XtextResource.OPTION_ENCODING, "UTF-8"));
} catch (Exception e) {
Assert.fail(e.getMessage());
}
ICompositeNode rootNode = resource.getParseResult().getRootNode();
ReplaceRegion region = null;
for(INode node: rootNode.getAsTreeIterable()) {
int offset = node.getTotalOffset();
int length = node.getTotalLength();
if (length != 0) {
if (region == null || region.getOffset() != offset || region.getLength() != length) {
region = new ReplaceRegion(offset, length, "");
if (Iterables.size(node.getLeafNodes()) > 1 && length > 1 && length != 3) {
tester.processFile(input, input, offset, length, "");
}
}
}
}
}
},