Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Willink2016-01-14 17:09:21 +0000
committerEd Willink2016-01-14 17:09:21 +0000
commit9c35dbb047d3f6f6798282003fa4630b2e2d2cfa (patch)
tree18f692bfef2412000cce5e9ef2a7f3fd028cc83e /tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2
parent19e530747e8a24a5f3a59da3d17a06510206c74b (diff)
downloadorg.eclipse.qvtd-9c35dbb047d3f6f6798282003fa4630b2e2d2cfa.tar.gz
org.eclipse.qvtd-9c35dbb047d3f6f6798282003fa4630b2e2d2cfa.tar.xz
org.eclipse.qvtd-9c35dbb047d3f6f6798282003fa4630b2e2d2cfa.zip
[485151] - Test case to demonstrate the failure
Diffstat (limited to 'tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2')
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl6
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_input.xmi39
-rw-r--r--tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_output_ref.xmi28
3 files changed, 73 insertions, 0 deletions
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl
index 079dceeb8..ea5b84fd4 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl
@@ -98,6 +98,12 @@ def : _qualified_env() : lookup::LookupEnvironment =
.addElements(ownedProperties)
def : _env(child : ocl::OclElement) : lookup::LookupEnvironment =
parentEnv().nestedEnv()
+ .addElements(let allSuperClasses = self->closure(superClass)
+ in allSuperClasses->collect(ownedProperties)
+ ->includingAll(allSuperClasses.ownedOperations)
+ ->asOrderedSet() -- FIXME
+ )
+ .nestedEnv()
.addElements(ownedOperations)
.addElements(ownedProperties)
def : _exported_env(importer : ocl::OclElement) : lookup::LookupEnvironment =
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_input.xmi b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_input.xmi
new file mode 100644
index 000000000..081cd222a
--- /dev/null
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_input.xmi
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ASCII"?>
+<classescs:RootCS
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:classescs="http://cs2as/tests/example2/classescs/1.0">
+ <ownedPackages
+ name="P1">
+ <ownedClasses
+ name="C1">
+ <properties
+ name="prop1">
+ <typeRef>
+ <path
+ name="C1"/>
+ </typeRef>
+ </properties>
+ </ownedClasses>
+ <ownedClasses
+ name="C2">
+ <extends>
+ <path
+ name="C1"/>
+ </extends>
+ <operations
+ name="getProp1FromSuperClass">
+ <bodyExps>
+ <name>
+ <path
+ name="prop1"/>
+ </name>
+ </bodyExps>
+ <resultRef>
+ <path
+ name="C1"/>
+ </resultRef>
+ </operations>
+ </ownedClasses>
+ </ownedPackages>
+</classescs:RootCS>
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_output_ref.xmi b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_output_ref.xmi
new file mode 100644
index 000000000..786270ed0
--- /dev/null
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/samples/model2V2_output_ref.xmi
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classes:Root
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:classes="http://cs2as/tests/example2/classes/1.0">
+ <ownedPackages
+ name="P1">
+ <ownedClasses
+ name="C1">
+ <ownedProperties
+ name="prop1"
+ type="//@ownedPackages.0/@ownedClasses.0"/>
+ </ownedClasses>
+ <ownedClasses
+ name="C2"
+ superClass="//@ownedPackages.0/@ownedClasses.0">
+ <ownedOperations
+ name="getProp1FromSuperClass"
+ type="//@ownedPackages.0/@ownedClasses.0">
+ <ownedExpressions
+ xsi:type="classes:PropertyCallExp"
+ type="//@ownedPackages.0/@ownedClasses.0"
+ referredProperty="//@ownedPackages.0/@ownedClasses.0/@ownedProperties.0"/>
+ </ownedOperations>
+ </ownedClasses>
+ </ownedPackages>
+</classes:Root>

Back to the top