Merge branch 'master' into sz/xtext_grammar_enhancements

This commit is contained in:
Sebastian Zarnekow 2015-08-20 14:13:25 +02:00
commit c9692da216
13 changed files with 87 additions and 55 deletions

View file

@ -70,7 +70,8 @@ public class DerivedStateAwareResourceDescriptionManager extends StorageAwareRes
}
}
} else {
log.error("Invalid configuration. DerivedStateAwareResourceDescriptionManager was registered, but resource was a " + resource.getClass().getName());
if (log.isDebugEnabled())
log.debug("Invalid configuration. DerivedStateAwareResourceDescriptionManager was registered, but resource was a " + resource.getClass().getName());
return super.internalGetResourceDescription(resource, strategy);
}
}

View file

@ -23,7 +23,6 @@ Export-Package: org.eclipse.xtext.testlanguages.backtracking,
org.eclipse.xtext.testlanguages.backtracking.beeLangTestLanguage,
org.eclipse.xtext.testlanguages.backtracking.beeLangTestLanguage.impl,
org.eclipse.xtext.testlanguages.backtracking.beeLangTestLanguage.util,
org.eclipse.xtext.testlanguages.backtracking.parseTreeConstruction,
org.eclipse.xtext.testlanguages.backtracking.parser.antlr,
org.eclipse.xtext.testlanguages.backtracking.parser.antlr.internal,
org.eclipse.xtext.testlanguages.backtracking.validation,
@ -41,5 +40,6 @@ Export-Package: org.eclipse.xtext.testlanguages.backtracking,
org.eclipse.xtext.testlanguages.noJdt.validation,
org.eclipse.xtext.testlanguages.noJdt.scoping,
org.eclipse.xtext.testlanguages.noJdt.generator,
org.eclipse.xtext.testlanguages.noJdt.formatting
org.eclipse.xtext.testlanguages.noJdt.formatting,
org.eclipse.xtext.testlanguages.backtracking.serializer

View file

@ -38,11 +38,10 @@ LanguageConfig {
emfRuntimeVersion = "2.9"
}
// the serialization component
fragment = parseTreeConstructor.ParseTreeConstructorFragment {}
// a custom ResourceFactory for use with EMF
fragment = resourceFactory.ResourceFactoryFragment {
fragment = resourceFactory.ResourceFactoryFragment {}
fragment = serializer.SerializerFragment {
srcGenOnly = true
}
// The antlr parser generator fragment.

View file

@ -19,9 +19,6 @@ LanguageConfig auto-inject {
emfRuntimeVersion = "2.9"
}
// the old serialization component
// fragment = parseTreeConstructor.ParseTreeConstructorFragment auto-inject {}
// serializer 2.0
fragment = serializer.SerializerFragment auto-inject {
generateStub = false

View file

@ -41,7 +41,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.generator.ecore.superPackage,
org.eclipse.xtext.generator.ecore.superPackage.impl,
org.eclipse.xtext.generator.ecore.superPackage.util,
org.eclipse.xtext.generator.ecore.parseTreeConstruction,
org.eclipse.xtext.generator.ecore.parser.antlr,
org.eclipse.xtext.generator.ecore.parser.antlr.internal,
org.eclipse.xtext.generator.ecore.subPackage,
@ -52,7 +51,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.xtextTest,
org.eclipse.xtext.xtextTest.impl,
org.eclipse.xtext.xtextTest.util,
org.eclipse.xtext.parseTreeConstruction,
org.eclipse.xtext.parser.antlr,
org.eclipse.xtext.parser.antlr.internal,
org.eclipse.xtext.lexer.parser.antlr,
@ -62,7 +60,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.lexer.backtrackingTestLanguage,
org.eclipse.xtext.lexer.backtrackingTestLanguage.impl,
org.eclipse.xtext.lexer.backtrackingTestLanguage.util,
org.eclipse.xtext.lexer.parseTreeConstruction,
org.eclipse.xtext.lexer.ignoreCaseTestLanguage,
org.eclipse.xtext.lexer.ignoreCaseTestLanguage.impl,
org.eclipse.xtext.lexer.ignoreCaseTestLanguage.util,
@ -71,7 +68,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.linking.lazy.lazyLinking,
org.eclipse.xtext.linking.lazy.lazyLinking.impl,
org.eclipse.xtext.linking.lazy.lazyLinking.util,
org.eclipse.xtext.linking.lazy.parseTreeConstruction,
org.eclipse.xtext.linking.lazy.parser.antlr,
org.eclipse.xtext.linking.lazy.parser.antlr.internal,
org.eclipse.xtext.linking,
@ -79,7 +75,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.linking.bug287988Test,
org.eclipse.xtext.linking.bug287988Test.impl,
org.eclipse.xtext.linking.bug287988Test.util,
org.eclipse.xtext.linking.parseTreeConstruction,
org.eclipse.xtext.linking.parser.antlr,
org.eclipse.xtext.linking.parser.antlr.internal,
org.eclipse.xtext.linking.bug289059Test,
@ -96,7 +91,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.dummy.dummyLang,
org.eclipse.xtext.dummy.dummyLang.impl,
org.eclipse.xtext.dummy.dummyLang.util,
org.eclipse.xtext.dummy.parseTreeConstruction,
org.eclipse.xtext.dummy.parser.antlr,
org.eclipse.xtext.dummy.parser.antlr.internal,
org.eclipse.xtext.enumrules,
@ -104,7 +98,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.enumrules.enumRulesTestLanguage,
org.eclipse.xtext.enumrules.enumRulesTestLanguage.impl,
org.eclipse.xtext.enumrules.enumRulesTestLanguage.util,
org.eclipse.xtext.enumrules.parseTreeConstruction,
org.eclipse.xtext.enumrules.parser.antlr,
org.eclipse.xtext.enumrules.parser.antlr.internal,
org.eclipse.xtext.enumrules.enumAndReferenceTestLanguage,
@ -115,12 +108,10 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.generator.ecore.second.util,
org.eclipse.xtext.generator.grammarAccess,
org.eclipse.xtext.generator.grammarAccess.services,
org.eclipse.xtext.generator.grammarAccess.parseTreeConstruction,
org.eclipse.xtext.generator.grammarAccess.parser.antlr,
org.eclipse.xtext.generator.grammarAccess.parser.antlr.internal,
org.eclipse.xtext.grammarinheritance,
org.eclipse.xtext.grammarinheritance.services,
org.eclipse.xtext.grammarinheritance.parseTreeConstruction,
org.eclipse.xtext.grammarinheritance.parser.antlr,
org.eclipse.xtext.grammarinheritance.parser.antlr.internal,
org.eclipse.xtext.grammarinheritance.baseInheritanceTest,
@ -140,7 +131,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.index.indexTestLanguage,
org.eclipse.xtext.index.indexTestLanguage.impl,
org.eclipse.xtext.index.indexTestLanguage.util,
org.eclipse.xtext.index.parseTreeConstruction,
org.eclipse.xtext.index.parser.antlr,
org.eclipse.xtext.index.parser.antlr.internal,
org.eclipse.xtext.metamodelreferencing.tests,
@ -148,7 +138,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.metamodelreferencing.tests.anotherSimpleTest,
org.eclipse.xtext.metamodelreferencing.tests.anotherSimpleTest.impl,
org.eclipse.xtext.metamodelreferencing.tests.anotherSimpleTest.util,
org.eclipse.xtext.metamodelreferencing.tests.parseTreeConstruction,
org.eclipse.xtext.metamodelreferencing.tests.parser.antlr,
org.eclipse.xtext.metamodelreferencing.tests.parser.antlr.internal,
org.eclipse.xtext.metamodelreferencing.tests.simpleTest,
@ -161,7 +150,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.antlr.bug299237Test,
org.eclipse.xtext.parser.antlr.bug299237Test.impl,
org.eclipse.xtext.parser.antlr.bug299237Test.util,
org.eclipse.xtext.parser.antlr.parseTreeConstruction,
org.eclipse.xtext.parser.antlr.parser.antlr,
org.eclipse.xtext.parser.antlr.parser.antlr.internal,
org.eclipse.xtext.parser.antlr.bug289524Test,
@ -187,7 +175,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.assignments.assignmentsTestLanguage,
org.eclipse.xtext.parser.assignments.assignmentsTestLanguage.impl,
org.eclipse.xtext.parser.assignments.assignmentsTestLanguage.util,
org.eclipse.xtext.parser.assignments.parseTreeConstruction,
org.eclipse.xtext.parser.assignments.parser.antlr,
org.eclipse.xtext.parser.assignments.parser.antlr.internal,
org.eclipse.xtext.parser.assignments.bug287184Test,
@ -201,7 +188,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.datatyperules.datatypeRulesTestLanguage,
org.eclipse.xtext.parser.datatyperules.datatypeRulesTestLanguage.impl,
org.eclipse.xtext.parser.datatyperules.datatypeRulesTestLanguage.util,
org.eclipse.xtext.parser.datatyperules.parseTreeConstruction,
org.eclipse.xtext.parser.datatyperules.parser.antlr,
org.eclipse.xtext.parser.datatyperules.parser.antlr.internal,
org.eclipse.xtext.parser.epatch,
@ -209,7 +195,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.epatch.epatchTestLanguage,
org.eclipse.xtext.parser.epatch.epatchTestLanguage.impl,
org.eclipse.xtext.parser.epatch.epatchTestLanguage.util,
org.eclipse.xtext.parser.epatch.parseTreeConstruction,
org.eclipse.xtext.parser.epatch.parser.antlr,
org.eclipse.xtext.parser.epatch.parser.antlr.internal,
org.eclipse.xtext.parser.keywords,
@ -217,7 +202,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.keywords.keywordsTestLanguage,
org.eclipse.xtext.parser.keywords.keywordsTestLanguage.impl,
org.eclipse.xtext.parser.keywords.keywordsTestLanguage.util,
org.eclipse.xtext.parser.keywords.parseTreeConstruction,
org.eclipse.xtext.parser.keywords.parser.antlr,
org.eclipse.xtext.parser.keywords.parser.antlr.internal,
org.eclipse.xtext.parser.terminalrules,
@ -225,7 +209,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.terminalrules.bug292245TestLanguage,
org.eclipse.xtext.parser.terminalrules.bug292245TestLanguage.impl,
org.eclipse.xtext.parser.terminalrules.bug292245TestLanguage.util,
org.eclipse.xtext.parser.terminalrules.parseTreeConstruction,
org.eclipse.xtext.parser.terminalrules.parser.antlr,
org.eclipse.xtext.parser.terminalrules.parser.antlr.internal,
org.eclipse.xtext.parser.terminalrules.bug297105TestLanguage,
@ -253,7 +236,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parsetree.formatter.formattertestlanguage,
org.eclipse.xtext.parsetree.formatter.formattertestlanguage.impl,
org.eclipse.xtext.parsetree.formatter.formattertestlanguage.util,
org.eclipse.xtext.parsetree.formatter.parseTreeConstruction,
org.eclipse.xtext.parsetree.formatter.parser.antlr,
org.eclipse.xtext.parsetree.formatter.parser.antlr.internal,
org.eclipse.xtext.parsetree.impl,
@ -261,7 +243,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parsetree.impl.bug305397,
org.eclipse.xtext.parsetree.impl.bug305397.impl,
org.eclipse.xtext.parsetree.impl.bug305397.util,
org.eclipse.xtext.parsetree.impl.parseTreeConstruction,
org.eclipse.xtext.parsetree.impl.parser.antlr,
org.eclipse.xtext.parsetree.impl.parser.antlr.internal,
org.eclipse.xtext.parsetree.reconstr,
@ -295,7 +276,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parsetree.unassignedtext.unassignedtext,
org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl,
org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.util,
org.eclipse.xtext.parsetree.unassignedtext.parseTreeConstruction,
org.eclipse.xtext.parsetree.unassignedtext.parser.antlr,
org.eclipse.xtext.parsetree.unassignedtext.parser.antlr.internal,
org.eclipse.xtext.parsetree.transientvalues,
@ -303,7 +283,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parsetree.transientvalues.transientvaluestest,
org.eclipse.xtext.parsetree.transientvalues.transientvaluestest.impl,
org.eclipse.xtext.parsetree.transientvalues.transientvaluestest.util,
org.eclipse.xtext.parsetree.transientvalues.parseTreeConstruction,
org.eclipse.xtext.parsetree.transientvalues.parser.antlr,
org.eclipse.xtext.parsetree.transientvalues.parser.antlr.internal,
org.eclipse.xtext.testlanguages,
@ -311,7 +290,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.testlanguages.actionLang,
org.eclipse.xtext.testlanguages.actionLang.impl,
org.eclipse.xtext.testlanguages.actionLang.util,
org.eclipse.xtext.testlanguages.parseTreeConstruction,
org.eclipse.xtext.testlanguages.parser.antlr,
org.eclipse.xtext.testlanguages.parser.antlr.internal,
org.eclipse.xtext.testlanguages.fowlerdsl,
@ -343,7 +321,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.valueconverter.bug250313,
org.eclipse.xtext.valueconverter.bug250313.impl,
org.eclipse.xtext.valueconverter.bug250313.util,
org.eclipse.xtext.valueconverter.parseTreeConstruction,
org.eclipse.xtext.valueconverter.parser.antlr,
org.eclipse.xtext.valueconverter.parser.antlr.internal,
org.eclipse.xtext.xtext.ecoreInference,
@ -351,7 +328,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.xtext.ecoreInference.multiValueFeatureTestLanguage,
org.eclipse.xtext.xtext.ecoreInference.multiValueFeatureTestLanguage.impl,
org.eclipse.xtext.xtext.ecoreInference.multiValueFeatureTestLanguage.util,
org.eclipse.xtext.xtext.ecoreInference.parseTreeConstruction,
org.eclipse.xtext.xtext.ecoreInference.parser.antlr,
org.eclipse.xtext.xtext.ecoreInference.parser.antlr.internal,
org.eclipse.xtext.xtext.ecoreInference.unassignedRuleCallTestLanguage,
@ -362,7 +338,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.validation.csvalidationtest,
org.eclipse.xtext.validation.csvalidationtest.impl,
org.eclipse.xtext.validation.csvalidationtest.util,
org.eclipse.xtext.validation.parseTreeConstruction,
org.eclipse.xtext.validation.parser.antlr,
org.eclipse.xtext.validation.parser.antlr.internal,
org.eclipse.xtext.resource,
@ -370,7 +345,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.resource.eObjectAtOffsetTestLanguage,
org.eclipse.xtext.resource.eObjectAtOffsetTestLanguage.impl,
org.eclipse.xtext.resource.eObjectAtOffsetTestLanguage.util,
org.eclipse.xtext.resource.parseTreeConstruction,
org.eclipse.xtext.resource.parser.antlr,
org.eclipse.xtext.resource.parser.antlr.internal,
org.eclipse.xtext.linking.ignoreCaseNamespacesTest,
@ -390,7 +364,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.encoding.encodingTest,
org.eclipse.xtext.parser.encoding.encodingTest.impl,
org.eclipse.xtext.parser.encoding.encodingTest.util,
org.eclipse.xtext.parser.encoding.parseTreeConstruction,
org.eclipse.xtext.parsetree.impl.commentAssociation,
org.eclipse.xtext.parsetree.impl.commentAssociation.impl,
org.eclipse.xtext.parsetree.impl.commentAssociation.util,
@ -453,7 +426,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage,
org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.impl,
org.eclipse.xtext.parser.indentation.indentationAwareTestLanguage.util,
org.eclipse.xtext.parser.indentation.parseTreeConstruction,
org.eclipse.xtext.parser.indentation.serializer,
org.eclipse.xtext.parser.unorderedGroups.serializer,
org.eclipse.xtext.parser.fragments.parser.antlr,
@ -473,7 +445,6 @@ Export-Package: org.eclipse.xtext.generator.ecore,
org.eclipse.xtext.parser.parameters.parametersTestLanguage,
org.eclipse.xtext.parser.parameters.parametersTestLanguage.impl,
org.eclipse.xtext.parser.parameters.parametersTestLanguage.util,
org.eclipse.xtext.parser.parameters.parseTreeConstruction,
org.eclipse.xtext.parser.parameters.serializer,
org.eclipse.xtext.parser.parameters.parser.antlr.lexer

View file

@ -431,7 +431,7 @@ Workflow {
}
language = {
uri = "classpath:/org/eclipse/xtext/parsetree/formatter/ElementMatcherTestLanguage.xtext"
fragment = @TestLanguagesFragments {}
fragment = @TestLanguagesFragmentsParseTreeConstructor {}
}
language = {
uri = "classpath:/org/eclipse/xtext/parsetree/impl/Bug305397.xtext"
@ -439,7 +439,7 @@ Workflow {
}
language = {
uri = "classpath:/org/eclipse/xtext/parsetree/impl/CommentAssociationTestLanguage.xtext"
fragment = @TestLanguagesFragments {}
fragment = @TestLanguagesFragmentsParseTreeConstructor {}
}
language = {
uri = "classpath:/org/eclipse/xtext/parsetree/reconstr/PartialSerializationTestLanguage.xtext"

View file

@ -12,7 +12,6 @@ var skipGenerate = false
var backtrack = false
var memoize = false
var generateDebugData = false
var graphvizCommand = ""
var srcGenOnly=true
var emfRuntimeVersion = "2.9"
@ -31,7 +30,6 @@ CompositeGeneratorFragment {
}
fragment = grammarAccess.GrammarAccessFragment auto-inject {}
fragment = ecore.EcoreGeneratorFragment auto-inject {}
// fragment = parseTreeConstructor.ParseTreeConstructorFragment auto-inject {}
fragment = serializer.SerializerFragment auto-inject {}
fragment = org.eclipse.xtext.idea.generator.parser.antlr.XtextAntlrIDEAGeneratorFragment auto-inject {
options = auto-inject {}

View file

@ -19,8 +19,6 @@ var backtrack = false
var memoize = false
var ignoreCase = false
var backtrackLexer = false
var generateDotDiagram = false
var graphvizCommand = ""
var srcGenOnly=true
var emfRuntimeVersion = "2.9"
@ -38,7 +36,6 @@ CompositeGeneratorFragment {
}
fragment = grammarAccess.GrammarAccessFragment auto-inject {}
fragment = ecore.EcoreGeneratorFragment auto-inject {}
// fragment = parseTreeConstructor.ParseTreeConstructorFragment auto-inject {}
fragment = serializer.SerializerFragment auto-inject {}
fragment = org.eclipse.xtext.idea.generator.parser.antlr.XtextAntlrIDEAGeneratorFragment auto-inject {
options = auto-inject {}

View file

@ -33,7 +33,6 @@ CompositeGeneratorFragment {
}
fragment = grammarAccess.GrammarAccessFragment auto-inject {}
fragment = ecore.EcoreGeneratorFragment auto-inject {}
fragment = parseTreeConstructor.ParseTreeConstructorFragment auto-inject {}
fragment = serializer.SerializerFragment auto-inject {}
fragment = builder.BuilderIntegrationFragment {}
fragment = org.eclipse.xtext.idea.generator.parser.antlr.XtextAntlrIDEAGeneratorFragment auto-inject {

View file

@ -39,7 +39,7 @@ Workflow {
language = {
uri = "classpath:/org/eclipse/xtext/parsetree/formatter/ElementMatcherTestLanguage.xtext"
fragment = @TestLanguagesFragments auto-inject {}
fragment = @TestLanguagesFragmentsParseTreeConstructor auto-inject {}
}
}
}

View file

@ -23,6 +23,7 @@ import org.eclipse.xtext.parsetree.impl.commentAssociation.Model;
import org.eclipse.xtext.parsetree.reconstr.ICommentAssociater;
import org.eclipse.xtext.parsetree.reconstr.Serializer;
import org.eclipse.xtext.resource.SaveOptions;
import org.eclipse.xtext.serializer.ISerializer;
import org.eclipse.xtext.util.ReplaceRegion;
import org.junit.Test;
@ -102,11 +103,21 @@ public class CommentAssociationTest extends AbstractXtextTests {
}
@Test public void testSerializeReplacement() throws Exception {
String xBlock = "// comment pre x\n"
+ "element /* comment inside x */ x // comment post x\n";
String yBlock = "// comment pre y\n" + "element /* comment inside y */ y // comment post y\n";
String zBlock = "// comment pre z\n" + "element z";
String textModel = xBlock + yBlock + zBlock;
String xBlock =
"// comment pre x\n" +
"element /* comment inside x */ x // comment post x\n" +
"";
String yBlock =
"// comment pre y\n" +
"element /* comment inside y */ y // comment post y\n" +
"";
String zBlock =
"// comment pre z\n" +
"element z";
String textModel =
xBlock +
yBlock +
zBlock;
// System.out.println(textModel);
Model model = (Model) getModel(textModel);
@ -151,7 +162,16 @@ public class CommentAssociationTest extends AbstractXtextTests {
model.getElements().add(y);
model.getElements().add(z);
String serialized = serialize(model);
assertEquals("element x // comment post x\nparent y element z", serialized);
assertEquals(commentsAtEndOfFileExpectation(), serialized);
}
protected String commentsAtEndOfFileExpectation() {
return "element x // comment post x\n parent y element z";
}
@Override
protected ISerializer getSerializer() {
return get(Serializer.class);
}
}

View file

@ -25,7 +25,7 @@ Workflow {
language = {
uri = "classpath:/org/eclipse/xtext/parsetree/impl/CommentAssociationTestLanguage.xtext"
fragment = @org.eclipse.xtext.TestLanguagesFragments {}
fragment = @org.eclipse.xtext.TestLanguagesFragmentsParseTreeConstructor {}
}
}
}

View file

@ -0,0 +1,50 @@
/*******************************************************************************
* Copyright (c) 2010 itemis AG (http://www.itemis.eu) and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*******************************************************************************/
package org.eclipse.xtext.parsetree.impl;
import org.eclipse.xtext.parsetree.impl.commentAssociation.Element;
import org.eclipse.xtext.resource.SaveOptions;
import org.eclipse.xtext.serializer.ISerializer;
import org.eclipse.xtext.serializer.impl.Serializer;
import org.eclipse.xtext.util.ReplaceRegion;
import org.junit.Ignore;
import org.junit.Test;
/**
* @author Sebastian Zarnekow - Initial contribution and API
*/
public class NewSerializerCommentAssociationTest extends CommentAssociationTest {
@Override
protected void checkReplaceRegion(Element element, String expectedText, String completeModel) {
Serializer serializer = get(Serializer.class);
ReplaceRegion replacement = serializer.serializeReplacement(element, SaveOptions.defaultOptions());
assertEquals(expectedText, replacement.getText());
assertEquals(completeModel.indexOf(expectedText), replacement.getOffset());
assertEquals(expectedText.length(), replacement.getLength());
}
@Override
@Test
@Ignore("https://bugs.eclipse.org/bugs/show_bug.cgi?id=475457")
public void testSerializeReplacement() throws Exception {
super.testSerializeReplacement();
}
@Override
protected ISerializer getSerializer() {
return get(Serializer.class);
}
@Override
protected String commentsAtEndOfFileExpectation() {
// no unnecessary space
return "element x // comment post x\nparent y element z";
}
}