Search in sources :

Example 6 with Type

use of org.eclipse.xtext.linking.importedURI.Type in project xtext-core by eclipse.

the class Bug437669Test method testResolved.

@Test
public void testResolved() {
    Type type = resolve("Foo");
    Resource resource = type.eResource();
    assertTrue(resource.getErrors().toString(), resource.getErrors().isEmpty());
    Type resolvedType = type.getExtends();
    assertNotNull(resolvedType);
    assertFalse(resolvedType.eIsProxy());
    assertEquals("Foo", resolvedType.getName());
}
Also used : Type(org.eclipse.xtext.linking.importedURI.Type) Resource(org.eclipse.emf.ecore.resource.Resource) Test(org.junit.Test)

Example 7 with Type

use of org.eclipse.xtext.linking.importedURI.Type in project xtext-core by eclipse.

the class UriBasedReaderTest method testTransitiveReferences.

@SuppressWarnings("unchecked")
@Test
public void testTransitiveReferences() throws Exception {
    UriBasedReader reader = new UriBasedReader();
    reader.addRegister(new ImportUriTestLanguageStandaloneSetup());
    reader.addUri(pathTo2("importUriSubfolder/Start.importuritestlanguage"));
    SlotEntry slotEntry = new SlotEntry();
    slotEntry.setType("Type");
    reader.addLoad(slotEntry);
    WorkflowContext ctx = new WorkflowContextDefaultImpl();
    IssuesImpl issues = new IssuesImpl();
    reader.checkConfiguration(issues);
    try {
        reader.invoke(ctx, new NullProgressMonitor(), issues);
    } catch (Exception e) {
        System.out.println(issues);
        throw e;
    }
    List<Type> types = (List<Type>) ctx.get(slotEntry.getSlot());
    assertEquals(3, types.size());
    for (Type type : types) {
        if (type.getName().equals("Foo")) {
            assertEquals("Bar", type.getExtends().getName());
        } else if (type.getName().equals("Bar")) {
            assertEquals("Baz", type.getExtends().getName());
        } else {
            assertNull(type.getExtends());
        }
    }
}
Also used : NullProgressMonitor(org.eclipse.emf.mwe.core.monitor.NullProgressMonitor) Type(org.eclipse.xtext.linking.importedURI.Type) ImportUriTestLanguageStandaloneSetup(org.eclipse.xtext.linking.ImportUriTestLanguageStandaloneSetup) WorkflowContext(org.eclipse.emf.mwe.core.WorkflowContext) WorkflowContextDefaultImpl(org.eclipse.emf.mwe.core.WorkflowContextDefaultImpl) IssuesImpl(org.eclipse.emf.mwe.core.issues.IssuesImpl) List(java.util.List) Test(org.junit.Test)

Aggregations

Type (org.eclipse.xtext.linking.importedURI.Type)7 Test (org.junit.Test)5 Resource (org.eclipse.emf.ecore.resource.Resource)3 Diagnostic (org.eclipse.xtext.diagnostics.Diagnostic)2 Main (org.eclipse.xtext.linking.importedURI.Main)2 List (java.util.List)1 EPackage (org.eclipse.emf.ecore.EPackage)1 ENotificationImpl (org.eclipse.emf.ecore.impl.ENotificationImpl)1 WorkflowContext (org.eclipse.emf.mwe.core.WorkflowContext)1 WorkflowContextDefaultImpl (org.eclipse.emf.mwe.core.WorkflowContextDefaultImpl)1 IssuesImpl (org.eclipse.emf.mwe.core.issues.IssuesImpl)1 NullProgressMonitor (org.eclipse.emf.mwe.core.monitor.NullProgressMonitor)1 Action (org.eclipse.xtext.Action)1 Parameter (org.eclipse.xtext.Parameter)1 ParserRule (org.eclipse.xtext.ParserRule)1 ImportUriTestLanguageStandaloneSetup (org.eclipse.xtext.linking.ImportUriTestLanguageStandaloneSetup)1 Import (org.eclipse.xtext.linking.importedURI.Import)1 INode (org.eclipse.xtext.nodemodel.INode)1 IEObjectDescription (org.eclipse.xtext.resource.IEObjectDescription)1 IScope (org.eclipse.xtext.scoping.IScope)1