package com.sap.furcas.prettyprinter.formatting; import static com.sap.furcas.prettyprinter.testutils.PrettyPrintTestHelper.readFile; import java.io.File; import org.junit.BeforeClass; import org.junit.Test; import com.sap.furcas.metamodel.FURCAS.TCS.ConcreteSyntax; import com.sap.furcas.metamodel.FURCAS.TCS.TCSFactory; import com.sap.furcas.parsergenerator.GrammarGenerationSourceConfiguration; import com.sap.furcas.parsergenerator.TCSParserGenerator; import com.sap.furcas.parsergenerator.TCSParserGeneratorFactory; import com.sap.furcas.prettyprinter.testutils.PrettyPrintAssertionUtil; import com.sap.furcas.prettyprinter.testutils.PrettyPrintTestHelper; import com.sap.furcas.runtime.parser.testbase.FailOnErrorErrorHandler; import com.sap.furcas.test.testutils.ResourceTestHelper; public class TestPrettyPrintSymbolSpaces { private static ConcreteSyntax syntax; @BeforeClass public static void setupParser() throws Exception { File syntaxFile = new File("fixtureData/SymbolSpaces.tcs"); TCSParserGenerator generator = TCSParserGeneratorFactory.INSTANCE.createTCSParserGenerator(); syntax = generator.parseSyntax(new GrammarGenerationSourceConfiguration(ResourceTestHelper.createResourceSet(), ResourceTestHelper.createFURCASReferenceScope()), syntaxFile, new FailOnErrorErrorHandler()).getSyntax(); } @Test public void testSymbolSpacesCombinations() throws Exception { ConcreteSyntax modelElement = TCSFactory.eINSTANCE.createConcreteSyntax(); modelElement.setName("name"); String output = PrettyPrintTestHelper.prettyPrintString(modelElement, syntax, ResourceTestHelper.createFURCASReferenceScope()); PrettyPrintAssertionUtil.assertEqualsByLines(output, readFile("fixtureData/SymbolSpaces_Combinations.out")); } }