Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'examples/bpm/org.eclipse.viatra.examples.bpm.tests')
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/.classpath9
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/.project40
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.xtend.core.Xtend.prefs2
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/META-INF/MANIFEST.MF22
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/build.properties9
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.operation7
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.process5
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.system13
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/plugin.xml5
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/pom.xml64
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/src-gen/.gitignore5
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/BPMTestsAll.java30
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/QueryBasedFeatureTest.xtend248
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/RuntimeListenerTest.xtend275
-rw-r--r--examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/queries/bpmTestQueries.vql21
16 files changed, 0 insertions, 762 deletions
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.classpath b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.classpath
deleted file mode 100644
index b51a74a28..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.project b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.project
deleted file mode 100644
index fb13aa1b8..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.project
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.viatra.examples.bpm.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.viatra.query.tooling.core.projectbuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- <nature>org.eclipse.viatra.query.projectnature</nature>
- </natures>
-</projectDescription>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.jdt.core.prefs b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f42de363a..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
-org.eclipse.jdt.core.compiler.compliance=1.7
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.xtend.core.Xtend.prefs b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.xtend.core.Xtend.prefs
deleted file mode 100644
index 851d44bfb..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/.settings/org.eclipse.xtend.core.Xtend.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.xtend.core.Xtend.useProjectSettings=true
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/META-INF/MANIFEST.MF b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 45408c5a1..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,22 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: BPM Related Runtime Tests
-Bundle-SymbolicName: org.eclipse.viatra.examples.bpm.tests;singleton:=true
-Bundle-Version: 1.2.0.qualifier
-Bundle-Vendor: Budapest University of Technology and Economics
-Export-Package: org.eclipse.viatra.examples.bpm.tests,
- org.eclipse.viatra.examples.bpm.tests.queries,
- org.eclipse.viatra.examples.bpm.tests.queries.util
-Require-Bundle: org.eclipse.viatra.addon.querybasedfeatures.runtime;bundle-version="0.7.0",
- org.eclipse.xtend.lib,
- com.google.guava,
- org.eclipse.xtext.xbase.lib,
- org.eclipse.viatra.examples.bpm,
- org.junit,
- org.eclipse.xtext.junit4,
- org.eclipse.viatra.examples.bpm.queries;bundle-version="0.7.0",
- com.google.inject,
- org.eclipse.viatra.query.runtime;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.viatra.query.testing.core;bundle-version="[1.2.0,2.0.0)"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Import-Package: org.apache.log4j
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/build.properties b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/build.properties
deleted file mode 100644
index 6fde8ddfc..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/build.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-bin.includes = META-INF/,\
- .,\
- model/,\
- plugin.xml
-source.. = src/,\
- src-gen/,\
- xtend-gen/
-output.. = bin/
-jars.extra.classpath = platform:/fragment/com.google.inject.multibindings \ No newline at end of file
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.operation b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.operation
deleted file mode 100644
index b5a95b608..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.operation
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<operation:Checklist xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:operation="http://operation/1.0" id="chl1" name="First Checklist" processId="rootProcess">
- <entries id="cle1" name="First CLE" taskId="st1">
- <info id="" name="Info1"/>
- <jobPaths>Simple/Job1</jobPaths>
- </entries>
-</operation:Checklist>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.process b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.process
deleted file mode 100644
index f0f1142c9..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.process
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<process:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:process="http://process/1.0" id="rootProcess" name="Root">
- <contents xsi:type="process:Task" id="st2" name="Other Service Task" kind="service"/>
- <contents xsi:type="process:Task" id="st1" name="First Service Task" kind="service"/>
-</process:Process>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.system b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.system
deleted file mode 100644
index bc4ed31a4..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/model/Simple.system
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<system:System xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:system="http://system/1.0" name="Simple">
- <contains name="Job1" runsOn="/">
- <taskIds>st1</taskIds>
- </contains>
- <contains name="Job2" runsOn="/">
- <taskIds>st2</taskIds>
- </contains>
- <data name="Data">
- <readingTaskIds>st1</readingTaskIds>
- <writingTaskIds>st2</writingTaskIds>
- </data>
-</system:System>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/plugin.xml b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/plugin.xml
deleted file mode 100644
index 760a7933b..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/plugin.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><plugin>
- <extension id="org.eclipse.viatra.examples.bpm.tests.queries.BpmTestQueries" point="org.eclipse.viatra.query.runtime.queryspecification">
- <group group="org.eclipse.viatra.query.runtime.extensibility.SingletonExtensionFactory:org.eclipse.viatra.examples.bpm.tests.queries.BpmTestQueries" id="org.eclipse.viatra.examples.bpm.tests.queries.BpmTestQueries"/>
- </extension>
-</plugin>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/pom.xml b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/pom.xml
deleted file mode 100644
index b993fb6f9..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/pom.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
- xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>org.eclipse.viatra.examples.bpm.parent</artifactId>
- <groupId>org.eclipse.viatra</groupId>
- <version>1.2.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.viatra.examples.bpm.parent/pom.xml</relativePath>
- </parent>
- <artifactId>org.eclipse.viatra.examples.bpm.tests</artifactId>
- <packaging>eclipse-test-plugin</packaging>
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.viatra</groupId>
- <artifactId>viatra-maven-plugin</artifactId>
- <version>${viatra.main.version}</version>
- <executions>
- <execution>
- <goals>
- <goal>generate</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <outputDirectory>src-gen</outputDirectory>
- <metamodels>
- <metamodel>
- <packageClass>org.eclipse.viatra.examples.bpm.operation.OperationPackage</packageClass>
- </metamodel>
- <metamodel>
- <packageClass>org.eclipse.viatra.examples.bpm.process.ProcessPackage</packageClass>
- </metamodel>
- <metamodel>
- <packageClass>org.eclipse.viatra.examples.bpm.system.SystemPackage</packageClass>
- </metamodel>
- </metamodels>
- </configuration>
- <dependencies>
- <dependency>
- <groupId>org.eclipse.viatra</groupId>
- <artifactId>org.eclipse.viatra.examples.bpm</artifactId>
- <version>${viatra.main.version}</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
- <groupId>org.eclipse.xtend</groupId>
- <artifactId>xtend-maven-plugin</artifactId>
- <version>${xtend.compiler.version}</version>
- <executions>
- <execution>
- <goals>
- <goal>compile</goal>
- <goal>testCompile</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src-gen/.gitignore b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src-gen/.gitignore
deleted file mode 100644
index ce4a58f9f..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src-gen/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-#This file is needed to prevent git from omitting this folder that would cause build issues/compile errors.
-# Ignore everything in this directory
-*
-# Except this file
-!.gitignore \ No newline at end of file
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/BPMTestsAll.java b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/BPMTestsAll.java
deleted file mode 100644
index 85bfdaf50..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/BPMTestsAll.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010-2013, Abel Hegedus, Istvan Rath and Daniel Varro
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Abel Hegedus - initial API and implementation
- *******************************************************************************/
-package org.eclipse.viatra.examples.bpm.tests;
-
-import org.eclipse.viatra.examples.bpm.tests.QueryBasedFeatureTest;
-import org.eclipse.viatra.examples.bpm.tests.RuntimeListenerTest;
-import org.junit.runner.RunWith;
-import org.junit.runners.Suite;
-import org.junit.runners.Suite.SuiteClasses;
-
-/**
- * @author Abel Hegedus
- *
- */
-@RunWith(value = Suite.class)
-@SuiteClasses({
- RuntimeListenerTest.class,
- QueryBasedFeatureTest.class
-})
-public class BPMTestsAll {
-
-}
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/QueryBasedFeatureTest.xtend b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/QueryBasedFeatureTest.xtend
deleted file mode 100644
index 82dafe088..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/QueryBasedFeatureTest.xtend
+++ /dev/null
@@ -1,248 +0,0 @@
-package org.eclipse.viatra.examples.bpm.tests
-
-import com.google.inject.Inject
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl
-import org.eclipse.viatra.addon.querybasedfeatures.runtime.QueryBasedFeatureHelper
-import org.eclipse.viatra.addon.querybasedfeatures.runtime.QueryBasedFeatureKind
-import org.eclipse.viatra.examples.bpm.operation.Checklist
-import org.eclipse.viatra.examples.bpm.operation.OperationPackage
-import org.eclipse.viatra.examples.bpm.process.Task
-import org.eclipse.viatra.examples.bpm.system.Job
-import org.eclipse.viatra.examples.bpm.system.System
-import org.eclipse.viatra.examples.bpm.system.Data
-import org.eclipse.viatra.examples.bpm.process.Process
-import org.eclipse.viatra.examples.bpm.tests.queries.JobTasksMatcher
-import org.eclipse.viatra.examples.bpm.tests.queries.ProcessTasksMatcher
-import org.eclipse.viatra.query.runtime.api.AdvancedViatraQueryEngine
-import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine
-import org.eclipse.viatra.query.runtime.emf.EMFScope
-import org.eclipse.viatra.query.runtime.extensibility.QuerySpecificationRegistry
-import org.eclipse.viatra.query.testing.core.ModelLoadHelper
-import org.eclipse.viatra.query.testing.core.TestExecutor
-import org.eclipse.viatra.query.testing.core.injector.EMFPatternLanguageInjectorProvider
-import org.eclipse.xtext.junit4.InjectWith
-import org.eclipse.xtext.junit4.XtextRunner
-import org.junit.Before
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import static org.junit.Assert.*
-
-@RunWith(typeof(XtextRunner))
-@InjectWith(typeof(EMFPatternLanguageInjectorProvider))
-class QueryBasedFeatureTest {
-
- @Inject extension TestExecutor
- @Inject extension ModelLoadHelper
-
- @Before
- def prepareQueries(){
-
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.system.JobTaskCorrespondence"))
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.system.DataTaskReadCorrespondence"))
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.system.DataTaskWriteCorrespondence"))
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.system.JobInfoCorrespondence"))
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.operation.ChecklistEntryJobCorrespondence"))
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.operation.ChecklistEntryTaskCorrespondence"))
- assertNotNull(QuerySpecificationRegistry::getQuerySpecification("org.eclipse.viatra.examples.bpm.queries.operation.ChecklistProcessCorrespondence"))
-
- }
-
- @Test
- def simpleGetterTest(){
-
- val rs = new ResourceSetImpl
- val resource = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.system")
-
- val sys = resource.contents.get(0) as System
- sys.contains.forEach[
- assertTrue(it.tasks.empty)
- ]
- sys.data.forEach[
- assertTrue(it.readingTask.empty)
- assertTrue(it.writingTask.empty)
- ]
-
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
- sys.contains.forEach[
- val job = it as Job
- assertTrue(job.taskIds.size == job.tasks.size)
- // all elements resolved
- assertTrue(job.taskIds.filter[tid |
- job.tasks.filter[
- val task = it as Task
- task.id == tid
- ].empty
- ].empty)
- assertTrue(job.tasks.filter[
- val task = it as Task
- !job.taskIds.contains(task.id)
- ].empty)
- ]
- sys.data.forEach[
- val data = it as Data
- assertTrue(data.readingTaskIds.size == data.readingTask.size)
- // all elements resolved
- assertTrue(data.readingTask.filter[
- val task = it as Task
- !data.readingTaskIds.contains(task.id)
- ].empty)
- assertTrue(data.writingTaskIds.size == data.writingTask.size)
- // all elements resolved
- assertTrue(data.writingTask.filter[
- val task = it as Task
- !data.writingTaskIds.contains(task.id)
- ].empty)
- ]
-
- }
-
- @Test
- def simpleModifyTest(){
- val rs = new ResourceSetImpl
- val resource = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.system")
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
-
- val sys = resource.contents.get(0) as System
- sys.contains.forEach[
- assertTrue(it.tasks.size == it.taskIds.size)
- ]
-
- val job = sys.contains.get(0)
-
- val engine = AdvancedViatraQueryEngine::on(new EMFScope(rs))
- val matcher = ProcessTasksMatcher::on(engine)
- matcher.forEachMatch[
- if(!job.tasks.contains(task)){
- job.taskIds += task.id
- }
- assertTrue(job.tasks.contains(task))
- ]
-
- val data = sys.data.get(0)
- data.readingTaskIds.clear
- assertTrue(data.readingTask.empty)
- }
-
- @Test
- def singleFeatureTest(){
- val rs = new ResourceSetImpl
- val resource = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.operation")
-
- val checklist = resource.contents.get(0) as Checklist
-
- checklist.entries.forEach[
- assertNull(it.task)
- ]
-
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
- val engine = AdvancedViatraQueryEngine::on(new EMFScope(rs))
- val procMatcher = ProcessTasksMatcher::on(engine)
-
- checklist.entries.forEach[
- if(it.taskId != null){
- assertTrue(it.task.id == it.taskId)
- }
-
- val t = it.task
- t.id = "changedID"
- assertNull(it.task)
-
- it.taskId = "changedID"
- assertTrue(it.task == t)
-
- it.taskId = null
- assertNull(it.task)
-
- val entry = it
-
- procMatcher.forEachMatch[
- entry.taskId = task.id
- ]
- ]
- }
-
- @Test
- def violateSingleFeatureTest(){
-
- val rs = new ResourceSetImpl
- val resource = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.operation")
- val resource2 = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
-
- val checklist = resource.contents.get(0) as Checklist
- val proc = resource2.contents.get(0) as Process
- val entry = checklist.entries.get(0)
- val tid = entry.taskId
- proc.contents.forEach[
- it.id = tid
- ]
-
- val engine = ViatraQueryEngine::on(new EMFScope(rs))
- engine.registerLogger
-
- entry.task
-
- val logOut = engine.retrieveLoggerOutput
- assertTrue(logOut.contains("[QueryBasedFeature] Space-time continuum breached (should never happen): multiple values for single feature!"));
- }
-
- @Test
- def initDuringMatcherBuilding(){
-
- val rs = new ResourceSetImpl
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.system")
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
-
- val engine = AdvancedViatraQueryEngine::on(new EMFScope(rs))
- engine.registerLogger
-
- val matcher = JobTasksMatcher::on(engine)
-
- assertTrue(matcher.countMatches > 0);
- matcher.forEachMatch[
- job.taskIds.clear
- assertTrue(job.tasks.empty)
- ]
- }
-
- @Test
- def uncachedSingleFeatureTest() {
-
- val rs = new ResourceSetImpl
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.system")
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
- val resource = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.operation")
-
- val singleqbf = QueryBasedFeatureHelper::getQueryBasedFeatureHandler(rs,
- OperationPackage::eINSTANCE.checklistEntry_Task,
- "org.eclipse.viatra.examples.bpm.queries.operation.ChecklistEntryTaskCorrespondence",
- "CLE", "Task",
- QueryBasedFeatureKind::SINGLE_REFERENCE, false);
-
-
- val checklist = resource.contents.get(0) as Checklist
-
- checklist.entries.forEach[
- assertEquals(singleqbf.getValue(it),it.task)
- ]
- }
-
- @Test
- def uncachedManyFeatureTest() {
- val rs = new ResourceSetImpl
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.system")
- loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
- val resource = loadAdditionalResourceFromUri(rs,"org.eclipse.viatra.examples.bpm.tests/model/Simple.operation")
-
- val manyqbf = QueryBasedFeatureHelper::getQueryBasedFeatureHandler(
- rs, OperationPackage::eINSTANCE.checklistEntry_Jobs,
- "org.eclipse.viatra.examples.bpm.queries.operation.ChecklistEntryJobCorrespondence", "CLE",
- "Job", QueryBasedFeatureKind::MANY_REFERENCE, false);
-
- val checklist = resource.contents.get(0) as Checklist
-
- checklist.entries.forEach[
- assertEquals(manyqbf.getValue(it),it.jobs)
- ]
- }
-}
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/RuntimeListenerTest.xtend b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/RuntimeListenerTest.xtend
deleted file mode 100644
index f0fa863e3..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/RuntimeListenerTest.xtend
+++ /dev/null
@@ -1,275 +0,0 @@
-package org.eclipse.viatra.examples.bpm.tests
-
-import com.google.inject.Inject
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl
-import org.eclipse.viatra.examples.bpm.tests.queries.NextActivityMatcher
-import org.eclipse.viatra.examples.bpm.tests.queries.ProcessTasksMatcher
-import org.eclipse.viatra.query.runtime.api.IPatternMatch
-import org.eclipse.viatra.query.runtime.api.ViatraQueryModelUpdateListener.ChangeLevel
-import org.eclipse.viatra.query.testing.core.ModelLoadHelper
-import org.eclipse.viatra.query.testing.core.injector.EMFPatternLanguageInjectorProvider
-import org.eclipse.xtext.junit4.InjectWith
-import org.eclipse.xtext.junit4.XtextRunner
-import org.junit.Test
-import org.junit.runner.RunWith
-import org.eclipse.viatra.examples.bpm.process.ProcessFactory
-
-import static org.junit.Assert.*
-import org.eclipse.viatra.query.runtime.api.ViatraQueryEngineManager
-import org.eclipse.viatra.query.runtime.api.AdvancedViatraQueryEngine
-import org.eclipse.viatra.query.runtime.emf.EMFScope
-import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine
-import org.eclipse.viatra.query.runtime.api.ViatraQueryModelUpdateListener
-import org.eclipse.viatra.query.runtime.api.ViatraQueryMatcher
-import org.eclipse.viatra.query.runtime.api.ViatraQueryEngineLifecycleListener
-import org.eclipse.viatra.query.runtime.api.ViatraQueryEngineInitializationListener
-import org.eclipse.xtend.lib.annotations.Accessors
-
-@RunWith(typeof(XtextRunner))
-@InjectWith(typeof(EMFPatternLanguageInjectorProvider))
-class RuntimeListenerTest {
- @Inject extension ModelLoadHelper
-
- @Test
- def engineInitializationListenerTest(){
-
- val rs = new ResourceSetImpl
- val manager = ViatraQueryEngineManager::instance
- val listener = new InitListener
-
- manager.addQueryEngineInitializationListener(listener)
-
- AdvancedViatraQueryEngine::createUnmanagedEngine(new EMFScope(rs))
- assertTrue(listener.engines.empty)
-
- val e2 = ViatraQueryEngine::on(new EMFScope(rs))
- assertArrayEquals(newArrayList(e2), listener.engines)
-
- manager.removeQueryEngineInitializationListener(listener)
- val e3 = AdvancedViatraQueryEngine::createUnmanagedEngine(new EMFScope(rs))
-
- assertTrue(!listener.engines.contains(e3))
- }
-
- @Test
- def engineLifecycleListenerTest(){
-
- val resource = loadModelFromUri("org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
- val engine = AdvancedViatraQueryEngine::createUnmanagedEngine(new EMFScope(resource))
- val listener = new LifycycleListener
-
- engine.addLifecycleListener(listener)
-
- val matcher = ProcessTasksMatcher::on(engine)
- assertArrayEquals(newArrayList(matcher), listener.matchers)
-
- //Cannot externally taint the engine; turning check off
- //engine.logger.fatal("Tainting in progress")
- //assertTrue(listener.tainted)
-
- engine.wipe
- assertTrue(listener.wiped)
-
- listener.wiped = false
- engine.dispose
- assertTrue(listener.wiped)
- assertTrue(listener.disposed)
-
- engine.removeLifecycleListener(listener)
- listener.disposed = false
- engine.dispose
- assertFalse(listener.disposed)
-
- }
-
- @Test
- def modelUpdateListenerTest(){
-
- val resource = loadModelFromUri("org.eclipse.viatra.examples.bpm.tests/model/Simple.process")
- val engine = AdvancedViatraQueryEngine::createUnmanagedEngine(new EMFScope(resource))
- val model = new ModelUpdateListener(ChangeLevel::MODEL)
-
- engine.addModelUpdateListener(model)
-
- val matcher = ProcessTasksMatcher::on(engine)
- model.changes.clear
-
- matcher.forOneArbitraryMatch[
- task.name = "changedName"
- val task2 = ProcessFactory::eINSTANCE.createTask// => [name = "newName"]
- task.parent.contents += task2
- ]
- /* NOTE: the second change is actually MATCHSET,
- * but since no listener is registered with that level,
- * it will be considered as INDEX */
- assertArrayEquals(newArrayList(ChangeLevel::MODEL,ChangeLevel::INDEX), model.changes)
-
- val index = new ModelUpdateListener(ChangeLevel::INDEX)
- engine.addModelUpdateListener(index)
- matcher.forOneArbitraryMatch[
- task.name = "changedName2"
- val task2 = ProcessFactory::eINSTANCE.createTask// => [name = "newName"]
- task.parent.contents += task2
- ]
- /* NOTE: the change is actually MATCHSET,
- * but since no listener is registered with that level,
- * it will be considered as INDEX */
- assertArrayEquals(newArrayList(ChangeLevel::INDEX), index.changes)
- index.changes.clear
-
- val matchset = new ModelUpdateListener(ChangeLevel::MATCHSET)
- engine.addModelUpdateListener(matchset)
- matcher.forOneArbitraryMatch[
- task.name = "changedName3"
- val task2 = ProcessFactory::eINSTANCE.createTask// => [name = "newName"]
- task.parent.contents += task2
- ]
- assertArrayEquals(newArrayList(ChangeLevel::MATCHSET), matchset.changes)
- assertArrayEquals(newArrayList(ChangeLevel::MATCHSET), index.changes)
-
- matchset.changes.clear
- // test new matcher added
- val nextMatcher = NextActivityMatcher::on(engine)
- matcher.forOneArbitraryMatch[
- val task2 = ProcessFactory::eINSTANCE.createTask// => [name = "newName"]
- task.parent.contents += task2
- task.next += task2
- ]
- assertArrayEquals(newArrayList(ChangeLevel::MATCHSET,ChangeLevel::MATCHSET), matchset.changes)
-
- // test removal
- engine.removeModelUpdateListener(model)
- model.changes.clear
-
- nextMatcher.forOneArbitraryMatch[
- next.name = "changedName4"
- next.previous.remove(act)
- ]
- engine.removeModelUpdateListener(matchset)
-
- index.changes.clear
- matcher.forOneArbitraryMatch[
- val task2 = ProcessFactory::eINSTANCE.createTask// => [name = "newName"]
- task.parent.contents += task2
- ]
- assertArrayEquals(newArrayList(ChangeLevel::INDEX), index.changes)
- assertTrue(model.changes.empty)
-
- //test wipe
- engine.wipe
-
- //test unsuccesful remove
- index.myLevel = ChangeLevel::MATCHSET
- val model2 = new ModelUpdateListener(ChangeLevel::MODEL)
- engine.addModelUpdateListener(model2)
- engine.removeModelUpdateListener(index)
- engine.removeModelUpdateListener(model)
- engine.removeModelUpdateListener(model2)
-
- // test all listeners removed
- val matcher2 = ProcessTasksMatcher::on(engine)
- matcher2.forOneArbitraryMatch[
- val task2 = ProcessFactory::eINSTANCE.createTask// => [name = "newName"]
- task.parent.contents += task2
- ]
-
- // test multi add
- engine.addModelUpdateListener(model)
- engine.addModelUpdateListener(model)
- engine.removeModelUpdateListener(index)
- // test dispose
- engine.dispose
- engine.removeModelUpdateListener(model)
-
- }
-
-}
-
-class InitListener implements ViatraQueryEngineInitializationListener{
-
- @Property val engines = newArrayList()
-
- override engineInitialized(AdvancedViatraQueryEngine engine) {
- assertTrue(AdvancedViatraQueryEngine::from(engine).managed)
- engines += engine
- }
-
-}
-
-class LifycycleListener implements ViatraQueryEngineLifecycleListener{
-
-// @Property
- var tainted = false
-// @Property
- var disposed = false
-// @Property
- var wiped = false
-// @Property
- var matchers = newArrayList
-
- def isTainted() {
- tainted
- }
-
- def setTainted(boolean tainted) {
- this.tainted = tainted
- }
-
- def isDisposed() {
- disposed
- }
-
- def setDisposed(boolean disposed) {
- this.disposed = disposed
- }
-
- def isWiped() {
- wiped
- }
-
- def setWiped(boolean wiped) {
- this.wiped = wiped
- }
-
- def getMatchers() {
- matchers
- }
-
- override engineBecameTainted(String description, Throwable t) {
- tainted = true
- }
-
- override engineDisposed() {
- disposed = true
- }
-
- override engineWiped() {
- wiped = true
- }
-
- override matcherInstantiated(ViatraQueryMatcher<? extends IPatternMatch> matcher) {
- matchers += matcher
- }
-
-}
-
-class ModelUpdateListener implements ViatraQueryModelUpdateListener{
-
- @Accessors ChangeLevel myLevel
-
- @Accessors val changes = newArrayList
-
- new(ChangeLevel level) {
- myLevel = level
- }
-
- override getLevel() {
- myLevel
- }
-
- override notifyChanged(ChangeLevel changeLevel) {
- assertFalse(changeLevel.compareTo(myLevel) < 0)
- changes += changeLevel
- }
-
-} \ No newline at end of file
diff --git a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/queries/bpmTestQueries.vql b/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/queries/bpmTestQueries.vql
deleted file mode 100644
index 21f4d9528..000000000
--- a/examples/bpm/org.eclipse.viatra.examples.bpm.tests/src/org/eclipse/viatra/examples/bpm/tests/queries/bpmTestQueries.vql
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.eclipse.viatra.examples.bpm.tests.queries
-
-import "http://operation/1.0"
-import "http://process/1.0"
-import "http://system/1.0"
-
-pattern processTasks(Proc : Process , Task : Activity){
- Process.contents(Proc, Task);
-}
-
-pattern nextActivity(Act : Activity,Next : Activity){
- Activity.next(Act,Next);
-}
-
-pattern jobTasks(Job : Job,Task : Task) {
- Job.tasks(Job, Task);
-}
-
-pattern entryTask(Entry : ChecklistEntry, Task : Task) {
- ChecklistEntry.task(Entry, Task);
-} \ No newline at end of file

Back to the top