blob: b01a4e35d5752ca7c154b06a54d0744ff59888fd [file] [log] [blame]
[module emfServices('http://www.eclipse.org/emf/2002/Ecore')/]
[template public test(p : EPackage)]
[comment]TODO(LOT1) check return types of EMF services (eClassifiers returns OrderedSet in A3 and Sequence in A4)[/comment]
[comment @main/]
[let c : EClass = p.getEClassifier('ClasseB').oclAsType(EClass)]
[let attr : EAttribute = c.eClass().getEStructuralFeature('name')]
[let ref : EReference = c.eClass().getEStructuralFeature('eSuperTypes')]
[file ('testEObject', false)]
@Test 'test'.oclAsType(String) => ['test'.oclAsType(String)/]
@Test c.oclIsUndefined() => [c.oclIsUndefined()/]
@Test c.oclIsTypeOf(EClass) => [c.oclIsTypeOf(EClass)/]
@Test c.oclIsTypeOf(EPackage) => [c.oclIsTypeOf(EPackage)/]
@Test c.oclIsKindOf(EClass) => [c.oclIsKindOf(EClass)/]
@Test c.oclIsKindOf(EPackage) => [c.oclIsKindOf(EPackage)/]
@Test c.oclAsType(EClass).name => [c.oclAsType(EClass).name/]
@Test c.toString().startsWith('org.eclipse.emf.ecore.impl.EClassImpl@') => [c.toString().startsWith('org.eclipse.emf.ecore.impl.EClassImpl@')/]
@Test c.siblings(EClass)->collect(name) => [c.siblings(EClass)->collect(name)/]
@Test c.precedingSiblings(EClass)->collect(name) => [c.precedingSiblings(EClass)->collect(name)/]
@Test c.precedingSiblings()->collect(name) => [c.precedingSiblings()->collect(name)/]
@Test c.followingSiblings(EClass)->collect(name) => [c.followingSiblings(EClass)->collect(name)/]
@Test c.followingSiblings()->collect(name) => [c.followingSiblings()->collect(name)/]
@Test c.eResource().toString().startsWith('org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl@') => [c.eResource().toString().startsWith('org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl@')/]
@Test c.eGet('name') => [c.eGet('name')/]
@Test c.eGet(c.eClass().getEStructuralFeature('name')) => [c.eGet(c.eClass().getEStructuralFeature('name'))/]
@Test c.eGet(c.eClass().getEStructuralFeature('name'), true) => [c.eGet(c.eClass().getEStructuralFeature('name'), true)/]
@Test c.eContainmentFeature().name => [c.eContainmentFeature().name/]
@Test c.eContainingFeature().name => [c.eContainingFeature().name/]
@Test c.eContainer().oclIsTypeOf(EPackage) => [c.eContainer().oclIsTypeOf(EPackage)/]
@Test c.eContainer(EPackage).name => [c.eContainer(EPackage).name/]
@Test c.eClass().name => [c.eClass().name/]
@Test c.ancestors(EPackage)->collect(name) => [c.ancestors(EPackage)->collect(name)/]
@Test c.ancestors()->collect(name) => [c.ancestors()->collect(name)/]
@Test c.eAllContents(EAttribute)->collect(name) => [c.eAllContents(EAttribute)->collect(name)/]
@Test c <> c.eContainer() => [c <> c.eContainer()/]
@Test c <> c => [c <> c/]
@Test c = c.eContainer() => [c = c.eContainer()/]
@Test c = c => [c = c/]
@Test c.eAllContents()->collect(name) => [c.eAllContents()->collect(name)/]
@Test c.siblings()->collect(name) => [c.siblings()->collect(name)/]
@Test c.eContents()->collect(name) => [c.eContents()->collect(name)/]
@Test c.eCrossReferences()->collect(name) => [c.eCrossReferences()->collect(name)/]
[comment]TODO ? eInvoke(operation, arguments)[/comment]
[comment]TODO ? oclIsInState(statespec)[/comment]
[comment]A4-UNSUPPORTED eInverse(filter)[/comment]
[comment]A4-UNSUPPORTED eInverse[/comment]
[comment]A4-UNSUPPORTED current(element)[/comment]
[comment]A4-UNSUPPORTED current(int)[/comment]
[comment]A4-UNSUPPORTED eIsProxy[/comment]
[comment]A4-UNSUPPORTED eIsSet[/comment]
[comment]A4-UNSUPPORTED eUnset[/comment]
[comment]A4-UNSUPPORTED eSet[/comment]
@Test c.oclAsSet().name => [c.oclAsSet().name/]
[comment]IRRELEVANT-A4-UNSUPPORTED oclIsInvalid[/comment]
[comment]IRRELEVANT-A4-DIFFERS oclAsType: validation error instead of 'invalid' [c.oclAsType(String)/][/comment]
[/file][/let][/let][/let]
[/template]