Search in sources :

Example 1 with IWhitespaceInformationProvider

use of org.eclipse.xtext.formatting.IWhitespaceInformationProvider in project xtext-core by eclipse.

the class LineSeparatorHarminizerTest method testHarmonizeLineBreaks.

@Test
public void testHarmonizeLineBreaks() {
    IWhitespaceInformationProvider whitespaceInformationProvider = get(IWhitespaceInformationProvider.class);
    URI uri = URI.createURI("example.txt");
    String ls = whitespaceInformationProvider.getLineSeparatorInformation(uri).getLineSeparator();
    assertFalse(isEmpty(ls));
    LineSeparatorHarmonizer lineSeparatorHarmonizer = get(LineSeparatorHarmonizer.class);
    assertEquals(ls, lineSeparatorHarmonizer.postProcess(uri, "\n"));
    assertEquals(ls, lineSeparatorHarmonizer.postProcess(uri, "\r"));
    assertEquals(ls, lineSeparatorHarmonizer.postProcess(uri, "\n\r"));
    assertEquals(ls, lineSeparatorHarmonizer.postProcess(uri, "\r\n"));
    assertEquals("0" + ls + "1" + ls + "2", lineSeparatorHarmonizer.postProcess(uri, "0\n1\r2"));
    assertEquals("0" + ls + "1" + ls + "2", lineSeparatorHarmonizer.postProcess(uri, "0\n\r1\r\n2"));
    assertEquals("0" + ls + ls + "1", lineSeparatorHarmonizer.postProcess(uri, "0\n\r\n\r1"));
    assertEquals("0" + ls + ls + "1", lineSeparatorHarmonizer.postProcess(uri, "0\r\n\r\n1"));
    assertEquals("0" + ls + ls + ls + "1", lineSeparatorHarmonizer.postProcess(uri, "0\n\r\n\r\n1"));
    assertEquals("0" + ls + ls + ls + "1", lineSeparatorHarmonizer.postProcess(uri, "0\r\n\r\n\r1"));
}
Also used : IWhitespaceInformationProvider(org.eclipse.xtext.formatting.IWhitespaceInformationProvider) URI(org.eclipse.emf.common.util.URI) Test(org.junit.Test)

Aggregations

URI (org.eclipse.emf.common.util.URI)1 IWhitespaceInformationProvider (org.eclipse.xtext.formatting.IWhitespaceInformationProvider)1 Test (org.junit.Test)1