aboutsummaryrefslogtreecommitdiffstats
path: root/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels
diff options
context:
space:
mode:
authorLibravatar ArenBabikian <aren.babikian@mail.mcgill.ca>2019-02-01 16:03:30 -0500
committerLibravatar ArenBabikian <aren.babikian@mail.mcgill.ca>2020-06-07 19:06:28 -0400
commit57e614aabedc176ba9965d0ca5e6daa23c5f4758 (patch)
tree16806454dff463419af99b14f6abfab3d1fa5291 /Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels
parentFAM MM transformation works (diff)
downloadVIATRA-Generator-57e614aabedc176ba9965d0ca5e6daa23c5f4758.tar.gz
VIATRA-Generator-57e614aabedc176ba9965d0ca5e6daa23c5f4758.tar.zst
VIATRA-Generator-57e614aabedc176ba9965d0ca5e6daa23c5f4758.zip
Fix FAM Test. Begin Grammar Fix.
Diffstat (limited to 'Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels')
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamMetamodel.ecore61
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamPatterns.vql12
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FamInstance.xmi12
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FunctionalArchitectureModel.xmi12
4 files changed, 94 insertions, 3 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamMetamodel.ecore b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamMetamodel.ecore
new file mode 100644
index 00000000..68943e55
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamMetamodel.ecore
@@ -0,0 +1,61 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="functionalarchitecture" nsURI="http://www.inf.mit.bme.hu/viatrasolver/example/fam"
4 nsPrefix="functionalarchitecture">
5 <eClassifiers xsi:type="ecore:EClass" name="FunctionalElement" abstract="true">
6 <eStructuralFeatures xsi:type="ecore:EReference" name="interface" eType="#//FunctionalInterface"
7 containment="true" eOpposite="#//FunctionalInterface/element"/>
8 <eStructuralFeatures xsi:type="ecore:EReference" name="model" lowerBound="1" eType="#//FunctionalArchitectureModel"
9 volatile="true" transient="true" derived="true">
10 <eAnnotations source="org.eclipse.viatra.query.querybasedfeature">
11 <details key="patternFQN" value="hu.bme.mit.inf.dslreasoner.domains.fam.model"/>
12 </eAnnotations>
13 </eStructuralFeatures>
14 <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//Function"
15 eOpposite="#//Function/subElements"/>
16 </eClassifiers>
17 <eClassifiers xsi:type="ecore:EClass" name="FunctionalArchitectureModel">
18 <eStructuralFeatures xsi:type="ecore:EReference" name="rootElements" upperBound="-1"
19 eType="#//FunctionalElement" containment="true"/>
20 </eClassifiers>
21 <eClassifiers xsi:type="ecore:EClass" name="Function" eSuperTypes="#//FunctionalElement">
22 <eStructuralFeatures xsi:type="ecore:EReference" name="subElements" upperBound="-1"
23 eType="#//FunctionalElement" containment="true" eOpposite="#//FunctionalElement/parent"/>
24 <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="#//FunctionType"/>
25 </eClassifiers>
26 <eClassifiers xsi:type="ecore:EClass" name="FAMTerminator">
27 <eStructuralFeatures xsi:type="ecore:EReference" name="data" eType="#//FunctionalData"
28 eOpposite="#//FunctionalData/terminator"/>
29 </eClassifiers>
30 <eClassifiers xsi:type="ecore:EClass" name="InformationLink">
31 <eStructuralFeatures xsi:type="ecore:EReference" name="from" eType="#//FunctionalOutput"
32 eOpposite="#//FunctionalOutput/outgoingLinks"/>
33 <eStructuralFeatures xsi:type="ecore:EReference" name="to" lowerBound="1" eType="#//FunctionalInput"
34 eOpposite="#//FunctionalInput/IncomingLinks"/>
35 </eClassifiers>
36 <eClassifiers xsi:type="ecore:EClass" name="FunctionalInterface">
37 <eStructuralFeatures xsi:type="ecore:EReference" name="data" upperBound="-1" eType="#//FunctionalData"
38 containment="true" eOpposite="#//FunctionalData/interface"/>
39 <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="#//FunctionalElement"
40 eOpposite="#//FunctionalElement/interface"/>
41 </eClassifiers>
42 <eClassifiers xsi:type="ecore:EClass" name="FunctionalInput" eSuperTypes="#//FunctionalData">
43 <eStructuralFeatures xsi:type="ecore:EReference" name="IncomingLinks" upperBound="-1"
44 eType="#//InformationLink" eOpposite="#//InformationLink/to"/>
45 </eClassifiers>
46 <eClassifiers xsi:type="ecore:EClass" name="FunctionalOutput" eSuperTypes="#//FunctionalData">
47 <eStructuralFeatures xsi:type="ecore:EReference" name="outgoingLinks" upperBound="-1"
48 eType="#//InformationLink" containment="true" eOpposite="#//InformationLink/from"/>
49 </eClassifiers>
50 <eClassifiers xsi:type="ecore:EClass" name="FunctionalData" abstract="true">
51 <eStructuralFeatures xsi:type="ecore:EReference" name="terminator" eType="#//FAMTerminator"
52 containment="true" eOpposite="#//FAMTerminator/data"/>
53 <eStructuralFeatures xsi:type="ecore:EReference" name="interface" eType="#//FunctionalInterface"
54 eOpposite="#//FunctionalInterface/data"/>
55 </eClassifiers>
56 <eClassifiers xsi:type="ecore:EEnum" name="FunctionType">
57 <eLiterals name="Root"/>
58 <eLiterals name="Intermediate" value="1"/>
59 <eLiterals name="Leaf" value="2"/>
60 </eClassifiers>
61</ecore:EPackage>
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamPatterns.vql b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamPatterns.vql
new file mode 100644
index 00000000..013d0419
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FAM/FamPatterns.vql
@@ -0,0 +1,12 @@
1package hu.bme.mit.inf.dslreasoner.domains.fam
2
3import epackage "http://www.inf.mit.bme.hu/viatrasolver/example/fam"
4
5@Constraint(message="terminatorAndInformation", severity="error", key={T})
6pattern terminatorAndInformation(T : FAMTerminator, I : InformationLink) = {
7 FunctionalOutput.outgoingLinks(Out,I);
8 FunctionalOutput.terminator(Out,T);
9} or {
10 InformationLink.to(I,In);
11 FunctionalInput.terminator(In,T);
12} \ No newline at end of file
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FamInstance.xmi b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FamInstance.xmi
new file mode 100644
index 00000000..8500678c
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FamInstance.xmi
@@ -0,0 +1,12 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<functionalarchitecture:FunctionalArchitectureModel
3 xmi:version="2.0"
4 xmlns:xmi="http://www.omg.org/XMI"
5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xmlns:functionalarchitecture="http://www.inf.mit.bme.hu/viatrasolver/example/fam"
7 xsi:schemaLocation="http://www.inf.mit.bme.hu/viatrasolver/example/fam ../../ModelGenExampleFAM_plugin/model/FamMetamodel.ecore">
8 <rootElements
9 xsi:type="functionalarchitecture:Function"/>
10 <rootElements
11 xsi:type="functionalarchitecture:Function"/>
12</functionalarchitecture:FunctionalArchitectureModel>
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FunctionalArchitectureModel.xmi b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FunctionalArchitectureModel.xmi
index 59935a2c..61256334 100644
--- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FunctionalArchitectureModel.xmi
+++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/initialModels/FunctionalArchitectureModel.xmi
@@ -1,4 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<functionalarchitecture:FunctionalArchitectureModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" 2<functionalarchitecture:FunctionalArchitectureModel
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:functionalarchitecture="http://www.inf.mit.bme.hu/viatrasolver/example/fam" 3 xmi:version="2.0"
4 xsi:schemaLocation="http://www.inf.mit.bme.hu/viatrasolver/example/fam FamMetamodel.ecore"/> 4 xmlns:xmi="http://www.omg.org/XMI"
5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xmlns:functionalarchitecture="http://www.inf.mit.bme.hu/viatrasolver/example/fam"
7 xsi:schemaLocation="http://www.inf.mit.bme.hu/viatrasolver/example/fam ../../ModelGenExampleFAM_plugin/model/FamMetamodel.ecore">
8 <rootElements
9 xsi:type="functionalarchitecture:Function"/>
10</functionalarchitecture:FunctionalArchitectureModel>