package org.example.xbase.expressions.tests; import com.google.inject.Inject; import org.eclipse.xtend2.lib.StringConcatenation; import org.eclipse.xtext.junit4.InjectWith; import org.eclipse.xtext.junit4.XtextRunner; import org.eclipse.xtext.junit4.util.ParseHelper; import org.eclipse.xtext.junit4.validation.ValidationTestHelper; import org.eclipse.xtext.xbase.lib.Exceptions; import org.eclipse.xtext.xbase.lib.Extension; import org.example.xbase.expressions.ExpressionsInjectorProvider; import org.example.xbase.expressions.expressions.ExpressionsModel; import org.junit.Test; import org.junit.runner.RunWith; @RunWith(XtextRunner.class) @InjectWith(ExpressionsInjectorProvider.class) @SuppressWarnings("all") public class ExpressionsParserTest { @Inject @Extension private ParseHelper<ExpressionsModel> _parseHelper; @Inject @Extension private ValidationTestHelper _validationTestHelper; @Test public void testSimpleExpression() { try { StringConcatenation _builder = new StringConcatenation(); _builder.append("println(10)"); ExpressionsModel _parse = this._parseHelper.parse(_builder); this._validationTestHelper.assertNoErrors(_parse); } catch (Throwable _e) { throw Exceptions.sneakyThrow(_e); } } @Test public void testVariableExpressions() { try { StringConcatenation _builder = new StringConcatenation(); _builder.append("val i = 10"); _builder.newLine(); _builder.append("val j = i + 1"); _builder.newLine(); _builder.append("val b = (i > j)"); _builder.newLine(); ExpressionsModel _parse = this._parseHelper.parse(_builder); this._validationTestHelper.assertNoErrors(_parse); } catch (Throwable _e) { throw Exceptions.sneakyThrow(_e); } } }