package org.eclipse.emf.ecore.xcore.tests.scoping;
import com.google.inject.Inject;
import org.eclipse.emf.ecore.xcore.XPackage;
import org.eclipse.emf.ecore.xcore.XcoreInjectorProvider;
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.xtend2.lib.StringConcatenation;
import org.junit.Test;
import org.junit.runner.RunWith;
@SuppressWarnings("all")
@RunWith(XtextRunner.class)
@InjectWith(XcoreInjectorProvider.class)
public class XbaseScopingTest {
@Inject
private ParseHelper<XPackage> parser;
@Inject
private ValidationTestHelper validator;
@Test
public void testLinkToThis() throws Exception {
StringConcatenation _builder = new StringConcatenation();
_builder.append("package foo.bar");
_builder.newLine();
_builder.newLine();
_builder.append("class X {");
_builder.newLine();
_builder.append("\t");
_builder.append("op X foo(X x) {");
_builder.newLine();
_builder.append("\t\t");
_builder.append("return this.foo(x)");
_builder.newLine();
_builder.append("\t");
_builder.append("}");
_builder.newLine();
_builder.append("}");
_builder.newLine();
XPackage _parse = this.parser.parse(_builder);
final XPackage pack = _parse;
this.validator.assertNoErrors(pack);
}
}