mirror of
https://github.com/processing/processing4.git
synced 2026-01-30 11:51:54 +01:00
* Move to ANTLR 4 with Java 11 lang features and localization. Introduces ANTLR4 and Java 8 language feature support within IDE while also adding additional hooks for localization of syntax error messages, addressing https://github.com/processing/processing/issues/3054 and https://github.com/processing/processing/issues/3055. The PR is broadly a continuation of https://github.com/processing/processing/issues/3055, bringing it up to speed with the latest Processing master plus the changes introduced at https://github.com/processing/processing/pull/5753. **Requires https://github.com/processing/processing/pull/5753 as pre-requisite.** This introduces a number of edits beyond https://github.com/processing/processing/issues/3055 beyond compatibility with current Processing master and https://github.com/processing/processing/pull/5753 including: - Update to the grammar itself - Change ANTLR listeners to emit `TextTransform.Edit` to unify JDT-based `PreprocessingService` and `JavaBuild`, removing code with duplicate purpose. - Introduction of syntax error rewriting with support for localization. - Addition of complete localized strings set for English and Spanish. - Addition of partial localized strings set for other languages. - Refactor of ANTLR-related code for testability and readability - Expansion of tests including full parse tests for new Java features (type inference, lambdas). * Ask travis for ant upgrade prior to run. * Ask Travis for java11 update. * Add openjdk ppa * Travis no confirmation on add ppa. * Force newer ant on travis. * Swtich ant download to www-us mirror. * Switch ant to 1.10.7 * Start x for unit tests in travis. * More complete start x in travis. * Revert x in travis. * Try x in services.
51 lines
1.0 KiB
Java
51 lines
1.0 KiB
Java
package processing.mode.java.pdex.util;
|
|
|
|
import org.junit.Assert;
|
|
import org.junit.Before;
|
|
import org.junit.Test;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
import static org.junit.Assert.*;
|
|
|
|
public class TabLineFactoryTest {
|
|
|
|
private List<Integer> starts;
|
|
|
|
@Before
|
|
public void setUp() {
|
|
starts = new ArrayList<>();
|
|
starts.add(0);
|
|
starts.add(5);
|
|
starts.add(10);
|
|
}
|
|
|
|
@Test
|
|
public void getTabStart() {
|
|
Assert.assertEquals(0, TabLineFactory.getTab(starts, 0).getTab());
|
|
}
|
|
|
|
@Test
|
|
public void getTabMiddleFrontEdge() {
|
|
Assert.assertEquals(1, TabLineFactory.getTab(starts, 5).getTab());
|
|
}
|
|
|
|
@Test
|
|
public void getTabMiddle() {
|
|
TabLine tabLine = TabLineFactory.getTab(starts, 7);
|
|
Assert.assertEquals(1, tabLine.getTab());
|
|
Assert.assertEquals(2, tabLine.getLineInTab());
|
|
}
|
|
|
|
@Test
|
|
public void getTabMiddleBackEdge() {
|
|
Assert.assertEquals(2, TabLineFactory.getTab(starts, 10).getTab());
|
|
}
|
|
|
|
@Test
|
|
public void getTabEnd() {
|
|
Assert.assertEquals(2, TabLineFactory.getTab(starts, 15).getTab());
|
|
}
|
|
|
|
} |