use of org.eclipse.xtext.formatting2.regionaccess.internal.regionaccesstestlanguage.Simple in project xtext-core by eclipse.
the class RegionAccessBuilderTest method testSimple.
@Test
public void testSimple() throws Exception {
String model = "1 foo\n".trim();
String expectation = "0 0 H\n" + " B Simple'foo' Root\n" + "0 1 S \"1\" Simple:'1'\n" + "1 1 H \" \" Whitespace:TerminalRule'WS'\n" + "2 3 S \"foo\" Simple:name=ID\n" + " E Simple'foo' Root\n" + "5 0 H\n";
assertRegions(model, expectation);
}
use of org.eclipse.xtext.formatting2.regionaccess.internal.regionaccesstestlanguage.Simple in project xtext-core by eclipse.
the class RegionAccessDiffTest method testEmptyModification.
@Test
public void testEmptyModification() throws Exception {
String model = "1 foo\n";
ITextRegionAccess access = regionAccessTestHelper.toTextRegionAccess(model);
String expectation1 = "0 0 H\n" + " B Simple'foo' Root\n" + "0 1 S \"1\" Simple:'1'\n" + "1 1 H \" \" Whitespace:TerminalRule'WS'\n" + "2 3 S \"foo\" Simple:name=ID\n" + " E Simple'foo' Root\n" + "5 0 H\n";
regionAccessTestHelper.assertRegions(access, expectation1);
ITextRegionAccess modifiedAccess = regionAccessTestHelper.modify(access, (ITextRegionDiffBuilder it) -> {
});
String expectation2 = "0 0 H\n" + " B Simple'foo' Root\n" + "0 1 S \"1\" Simple:'1'\n" + "1 1 H \" \" Whitespace:TerminalRule'WS'\n" + "2 3 S \"foo\" Simple:name=ID\n" + " E Simple'foo' Root\n" + "5 0 H\n";
regionAccessTestHelper.assertRegions(modifiedAccess, expectation2);
}
use of org.eclipse.xtext.formatting2.regionaccess.internal.regionaccesstestlanguage.Simple in project xtext-core by eclipse.
the class RegionAccessTestLanguageSemanticSequencer method sequence.
@Override
public void sequence(ISerializationContext context, EObject semanticObject) {
EPackage epackage = semanticObject.eClass().getEPackage();
ParserRule rule = context.getParserRule();
Action action = context.getAssignedAction();
Set<Parameter> parameters = context.getEnabledBooleanParameters();
if (epackage == RegionaccesstestlanguagePackage.eINSTANCE)
switch(semanticObject.eClass().getClassifierID()) {
case RegionaccesstestlanguagePackage.ACTION:
sequence_Fragment_Mixed(context, (org.eclipse.xtext.formatting2.regionaccess.internal.regionaccesstestlanguage.Action) semanticObject);
return;
case RegionaccesstestlanguagePackage.ADD:
sequence_Expression(context, (Add) semanticObject);
return;
case RegionaccesstestlanguagePackage.ASSIGNED_ACTION:
sequence_Mixed(context, (AssignedAction) semanticObject);
return;
case RegionaccesstestlanguagePackage.DELEGATE:
sequence_Delegate(context, (Delegate) semanticObject);
return;
case RegionaccesstestlanguagePackage.DELEGATION:
sequence_Delegation(context, (Delegation) semanticObject);
return;
case RegionaccesstestlanguagePackage.MIXED:
sequence_Mixed(context, (Mixed) semanticObject);
return;
case RegionaccesstestlanguagePackage.NAMED:
sequence_Primary(context, (Named) semanticObject);
return;
case RegionaccesstestlanguagePackage.PREFIXED_UNASSIGNED:
sequence_PrefixedUnassigned(context, (PrefixedUnassigned) semanticObject);
return;
case RegionaccesstestlanguagePackage.ROOT:
sequence_Root(context, (Root) semanticObject);
return;
case RegionaccesstestlanguagePackage.ROOT_ACTION:
sequence_Root(context, (RootAction) semanticObject);
return;
case RegionaccesstestlanguagePackage.SIMPLE:
sequence_Simple(context, (Simple) semanticObject);
return;
case RegionaccesstestlanguagePackage.VALUE_LIST:
sequence_ValueList(context, (ValueList) semanticObject);
return;
}
if (errorAcceptor != null)
errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
use of org.eclipse.xtext.formatting2.regionaccess.internal.regionaccesstestlanguage.Simple in project xtext-core by eclipse.
the class FormattableDocumentTest method simple.
@Test
public void simple() {
final Procedure1<GenericFormatterTestRequest> _function = (GenericFormatterTestRequest it) -> {
StringConcatenation _builder = new StringConcatenation();
_builder.append("idlist a");
_builder.newLine();
it.setToBeFormatted(_builder);
final GenericFormatter<IDList> _function_1 = new GenericFormatter<IDList>() {
@Override
protected void format(final IDList model, @Extension final ITextRegionExtensions regions, @Extension final IFormattableDocument document) {
final Procedure1<IHiddenRegionFormatter> _function = (IHiddenRegionFormatter it_1) -> {
it_1.oneSpace();
};
document.append(regions.regionFor(model).keyword("idlist"), _function);
}
};
it.setFormatter(_function_1);
StringConcatenation _builder_1 = new StringConcatenation();
_builder_1.append("idlist a");
_builder_1.newLine();
it.setExpectation(_builder_1);
};
this._genericFormatterTester.assertFormatted(_function);
}
use of org.eclipse.xtext.formatting2.regionaccess.internal.regionaccesstestlanguage.Simple in project xtext-core by eclipse.
the class RegionAccessBuilderTest method testMultiWhitespace1.
@Test
public void testMultiWhitespace1() throws Exception {
String model = "1 /**/ foo\n".trim();
String expectation = " 0 0 H\n" + " B Simple'foo' Root\n" + " 0 1 S \"1\" Simple:'1'\n" + " 1 H \" \" Whitespace:TerminalRule'WS'\n" + " \"/**/\" Comment:TerminalRule'ML_COMMENT' Association:CONTAINER\n" + " 6 \" \" Whitespace:TerminalRule'WS'\n" + " 7 3 S \"foo\" Simple:name=ID\n" + " E Simple'foo' Root\n" + "10 0 H\n";
assertRegions(model, expectation);
}
Aggregations