[570995] Ensure test models are unregistered/registered
diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/OCL2QVTiTestCases.java b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/OCL2QVTiTestCases.java
index c27a018..658d655 100644
--- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/OCL2QVTiTestCases.java
+++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/OCL2QVTiTestCases.java
@@ -263,8 +263,9 @@
}
finally {
myQVT.dispose();
- EPackage.Registry.INSTANCE.remove(example1.source.SourcePackage.eNS_URI);
- EPackage.Registry.INSTANCE.remove(example1.target.TargetPackage.eNS_URI);
+ cleanup("http://cs2as/tests/example1/env/1.0",
+ example1.source.SourcePackage.eNS_URI,
+ example1.target.TargetPackage.eNS_URI);
}
}
@@ -364,9 +365,10 @@
}
finally {
myQVT.dispose();
- EPackage.Registry.INSTANCE.remove(example2.classes.ClassesPackage.eNS_URI);
- EPackage.Registry.INSTANCE.remove(example2.classescs.ClassescsPackage.eNS_URI);
- EPackage.Registry.INSTANCE.remove(example2.classescstraces.ClassescstracesPackage.eNS_URI);
+ cleanup("http://cs2as/tests/example2/env/1.0",
+ example2.classescs.ClassescsPackage.eNS_URI,
+ example2.classes.ClassesPackage.eNS_URI,
+ example2.classescstraces.ClassescstracesPackage.eNS_URI);
}
}
diff --git a/tests/org.eclipse.qvtd.umlx.tests/src/org/eclipse/qvtd/umlx/tests/UMLXCompilerTests.java b/tests/org.eclipse.qvtd.umlx.tests/src/org/eclipse/qvtd/umlx/tests/UMLXCompilerTests.java
index 3664b38..2f6b2d6 100644
--- a/tests/org.eclipse.qvtd.umlx.tests/src/org/eclipse/qvtd/umlx/tests/UMLXCompilerTests.java
+++ b/tests/org.eclipse.qvtd.umlx.tests/src/org/eclipse/qvtd/umlx/tests/UMLXCompilerTests.java
@@ -263,6 +263,9 @@
}
finally {
myQVT2.dispose();
+ cleanup("http://www.eclipse.org/qvtd/examples/umlx/hstm2fstm/HierarchicalStateMachine",
+ "http://www.eclipse.org/qvtd-example/org/eclipse/qvtd/xtext/umlx/tests/hstm2fstm/HierarchicalStateMachine2FlatStateMachine",
+ "http://www.eclipse.org/qvtd/examples/umlx/hstm2fstm/FlatStateMachine");
}
}
}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtbase.tests/src/org/eclipse/qvtd/xtext/qvtbase/tests/PivotTestCase.java b/tests/org.eclipse.qvtd.xtext.qvtbase.tests/src/org/eclipse/qvtd/xtext/qvtbase/tests/PivotTestCase.java
index fc41872..0b4ab96 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtbase.tests/src/org/eclipse/qvtd/xtext/qvtbase/tests/PivotTestCase.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtbase.tests/src/org/eclipse/qvtd/xtext/qvtbase/tests/PivotTestCase.java
@@ -18,12 +18,17 @@
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
+import java.util.WeakHashMap;
import org.eclipse.emf.common.util.Diagnostic;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EValidator;
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
import org.eclipse.emf.ecore.impl.BasicEObjectImpl;
import org.eclipse.emf.ecore.resource.Resource;
@@ -38,6 +43,8 @@
import org.eclipse.ocl.pivot.internal.ecore.as2es.AS2Ecore;
import org.eclipse.ocl.pivot.internal.resource.ASResourceImpl;
import org.eclipse.ocl.pivot.internal.utilities.EnvironmentFactoryInternal;
+import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;
+import org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory;
import org.eclipse.ocl.pivot.utilities.ClassUtil;
import org.eclipse.ocl.pivot.utilities.LabelUtil;
import org.eclipse.ocl.pivot.utilities.OCL;
@@ -64,6 +71,24 @@
public static final @NonNull String PLUGIN_ID = "org.eclipse.qvtd.xtext.qvtbase.tests";
public static final @NonNull TracingOption TEST_START = new TracingOption(PLUGIN_ID, "test/start");
+ /*
+ * The following may be tweaked to assist debugging.
+ */
+ //public static boolean DEBUG_GC = false; // True performs an enthusuastic resource release and GC at the end of each test
+ public static boolean DEBUG_ID = false; // True prints the start and end of each test.
+ {
+ PivotUtilInternal.noDebug = false;
+ // DEBUG_GC = true;
+ DEBUG_ID = true;
+ AbstractEnvironmentFactory.liveEnvironmentFactories = new WeakHashMap<>(); // Prints the create/finalize of each EnvironmentFactory
+ // PivotMetamodelManager.liveMetamodelManagers = new WeakHashMap<>(); // Prints the create/finalize of each MetamodelManager
+ // StandaloneProjectMap.liveStandaloneProjectMaps = new WeakHashMap<>(); // Prints the create/finalize of each StandaloneProjectMap
+ // ResourceSetImpl.liveResourceSets = new WeakHashMap<>(); // Requires edw-debug private EMF branch
+ TEST_START.setState(true);
+ AbstractEnvironmentFactory.ENVIRONMENT_FACTORY_ATTACH.setState(true);
+ ThreadLocalExecutor.THREAD_LOCAL_ENVIRONMENT_FACTORY.setState(true);
+ }
+
public static @NonNull List<Diagnostic> assertDiagnostics(@NonNull String prefix, @NonNull List<Diagnostic> diagnostics, String... messages) {
Map<String, Integer> expected = new HashMap<String, Integer>();
for (String message : messages) {
@@ -260,12 +285,29 @@
public static @NonNull List<Diagnostic> assertValidationDiagnostics(@NonNull String prefix, @NonNull Resource resource, Map<Object, Object> validationContext, String... messages) {
List<Diagnostic> diagnostics = new ArrayList<Diagnostic>();
for (EObject eObject : resource.getContents()) {
- Diagnostic diagnostic = Diagnostician.INSTANCE.validate(eObject, validationContext);
+ Diagnostic diagnostic = Diagnostician.INSTANCE.validate(eObject, validationContext); // FIXME inline 1 call level
diagnostics.addAll(diagnostic.getChildren());
}
return messages != null ? assertDiagnostics(prefix, diagnostics, messages) : Collections.emptyList();
}
+ /**
+ * Remove the global EPackage.Registry and EValidator.Registry for the nsURIs.
+ * This should be invoked at the end of a test that installs compiled models to avoid pollution
+ * affecting subsequent tests that may re-use the nsURI.
+ */
+ protected static void cleanup(@NonNull String @NonNull ... nsURIs) {
+ for (@NonNull String nsURI : nsURIs) {
+ Object ePackage = EPackage.Registry.INSTANCE.remove(nsURI);
+ if (ePackage instanceof EPackage) {
+ EValidator.Registry.INSTANCE.remove(ePackage);
+ }
+ else {
+ QVTruntimeUtil.errPrintln("No EPackage to cleanup for '" + nsURI + "'");
+ }
+ }
+ }
+
protected static Value failOn(String expression, Throwable e) {
if (e instanceof EvaluationException) {
Throwable eCause = e.getCause();
@@ -346,17 +388,37 @@
return ClassUtil.nonNullState(super.getName());
}
+ private static List<String> savedEPackageRegistry = null;
+
@Override
protected void setUp() throws Exception {
+ savedEPackageRegistry = new ArrayList<>(EPackage.Registry.INSTANCE.keySet());
+ Collections.sort(savedEPackageRegistry);
if (!TEST_START.isActive()) {
QVTruntimeUtil.contextLine = "-----Starting " + getClass().getSimpleName() + "." + getName() + "-----";
}
super.setUp();
+ if (DEBUG_ID) {
+ PivotUtilInternal.debugPrintln("-----Starting " + getClass().getSimpleName() + "." + getName() + "-----");
+ }
TracingOption.resetAll();
ASResourceImpl.CHECK_IMMUTABILITY.setState(true);
TEST_START.println("-----Starting " + getClass().getSimpleName() + "." + getName() + "-----");
startTime = System.nanoTime();
+ /* List<String> nsURIs = new ArrayList<>();
+ for (EPackage ePackage : EValidator.Registry.INSTANCE.keySet()) {
+ nsURIs.add(ePackage.getNsURI());
+ }
+ System.out.println("EValidator.Registry.INSTANCE size = " + EValidator.Registry.INSTANCE.size());
+ Collections.sort(nsURIs);
+ for (String nsURI : nsURIs) {
+ System.out.println("\t" + nsURI);
+ } */
}
+
+
+
+
static long startTime;
@Override
@@ -366,5 +428,23 @@
// long time = System.nanoTime() - startTime;
super.tearDown();
QVTruntimeUtil.contextLine = null;
+ //
+ // Diagnose the unexpected residual EPackage.Registry that are being left lying around to pollute another test.
+ //
+ Set<String> newSet = new HashSet<>(EPackage.Registry.INSTANCE.keySet());
+ newSet.removeAll(savedEPackageRegistry);
+ if (newSet.size() > 0) {
+ List<String> newList = new ArrayList<>(newSet);
+ Collections.sort(savedEPackageRegistry);
+ // QVTruntimeUtil.errPrintln("EPackage.Registry.INSTANCE pre-extras");
+ for (String nsURI : newList) {
+ if (nsURI.contains("example") || nsURI.contains("test") || (!nsURI.startsWith("http://www.eclipse.org") && !nsURI.startsWith("http://www.w3.org"))) {
+ PivotUtilInternal.debugPrintln("Extra " + nsURI);
+ }
+ }
+ }
+ if (DEBUG_ID) {
+ PivotUtilInternal.debugPrintln("==> Finish " + getClass().getSimpleName() + "." + getName());
+ }
}
}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtcore.tests/src/org/eclipse/qvtd/xtext/qvtcore/tests/QVTcCompilerTests.java b/tests/org.eclipse.qvtd.xtext.qvtcore.tests/src/org/eclipse/qvtd/xtext/qvtcore/tests/QVTcCompilerTests.java
index e153cf7..a332e44 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtcore.tests/src/org/eclipse/qvtd/xtext/qvtcore/tests/QVTcCompilerTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtcore.tests/src/org/eclipse/qvtd/xtext/qvtcore/tests/QVTcCompilerTests.java
@@ -55,6 +55,8 @@
import org.eclipse.qvtd.xtext.qvtcore.tests.uml2rdbms.simplerdbms.SimplerdbmsPackage;
import org.eclipse.qvtd.xtext.qvtcore.tests.uml2rdbms.simpleuml.SimpleumlPackage;
import org.eclipse.qvtd.xtext.qvtcore.tests.uml2rdbms.simpleuml2rdbms.Simpleuml2rdbmsPackage;
+import org.eclipse.qvtd.xtext.qvtcore.tests.upper2lower.simplegraph.SimplegraphPackage;
+import org.eclipse.qvtd.xtext.qvtcore.tests.upper2lower.simplegraph2graph.Simplegraph2graphPackage;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -241,6 +243,9 @@
}
finally {
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvtd/xtext/qvtcore/tests/Upper2Lower/1.0/Families2Persons",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/Upper2Lower/1.0/Families",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/Upper2Lower/1.0/Persons");
}
}
@@ -367,6 +372,8 @@
}
finally {
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvtd/xtext/qvtcore/tests/forward2reverse/1.0/List2List",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/forward2reverse/1.0/DoublyLinkList");
}
}
@@ -432,6 +439,9 @@
}
finally {
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvtd/xtext/qvtcore/tests/HSV2HSL/1.0/HSLTree",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/HSV2HLS/1.0/HSVTree",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/HSV2HSL/1.0/HSVtoHSL");
}
}
@@ -468,6 +478,9 @@
}
finally {
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvtd/xtext/qvtcore/tests/UML2RDBMS/1.0/SimpleRDBMS",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/UML2RDBMS/1.0/simpleUML",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/UML2RDBMS/1.0/SimpleUMLtoRDBMS");
}
}
@@ -546,6 +559,9 @@
}
finally {
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvtd/xtext/qvtcore/tests/UML2RDBMS/1.0/SimpleRDBMS",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/UML2RDBMS/1.0/simpleUML",
+ "http://www.eclipse.org/qvtd/xtext/qvtcore/tests/UML2RDBMS/1.0/SimpleUMLtoRDBMS");
}
}
@@ -600,6 +616,9 @@
}
finally {
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvtd/examples/qvtcore/UML2RDBMS/1.0/SimpleUMLtoRDBMS",
+ "http://www.eclipse.org/qvtd/examples/qvtcore/UML2RDBMS/1.0/simpleUML",
+ "http://www.eclipse.org/qvtd/examples/qvtcore/UML2RDBMS/1.0/SimpleRDBMS");
}
}
@@ -619,6 +638,8 @@
}
finally {
myQVT.dispose();
+ cleanup(SimplegraphPackage.eNS_URI,
+ Simplegraph2graphPackage.eNS_URI);
}
}
@@ -634,6 +655,8 @@
// AbstractMerger.FAILURE.setState(true);
// AbstractMerger.LATE.setState(true);
// QVTiProductionConsumption.SUMMARY.setState(true);
+ EPackage.Registry.INSTANCE.put(SimplegraphPackage.eNS_URI, SimplegraphPackage.eINSTANCE);
+ EPackage.Registry.INSTANCE.put(Simplegraph2graphPackage.eNS_URI, Simplegraph2graphPackage.eINSTANCE);
MyQVT myQVT = createQVT("upper2lower", getModelsURI("upper2lower/Upper2Lower.qvtcas"));
// myQVT.getEnvironmentFactory().setEvaluationTracingEnabled(true);
try {
@@ -648,6 +671,8 @@
}
finally {
myQVT.dispose();
+ cleanup(SimplegraphPackage.eNS_URI,
+ Simplegraph2graphPackage.eNS_URI);
}
}
}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java
index 4b2dd09..fd46db2 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiCompilerTests.java
@@ -46,7 +46,6 @@
import org.eclipse.ocl.examples.codegen.dynamic.JavaFileUtil;
import org.eclipse.ocl.examples.codegen.dynamic.OCL2JavaFileObject;
import org.eclipse.ocl.examples.codegen.utilities.CGUtil;
-import org.eclipse.ocl.examples.pivot.tests.PivotTestCase.GlobalStateMemento;
import org.eclipse.ocl.examples.xtext.tests.TestFile;
import org.eclipse.ocl.examples.xtext.tests.TestProject;
import org.eclipse.ocl.examples.xtext.tests.TestUtil;
@@ -109,7 +108,7 @@
protected static class MyQVT extends OCLInternal
{
protected final @NonNull TestProject testProject;
- private GlobalStateMemento globalStateMemento = new GlobalStateMemento();
+ // private GlobalStateMemento globalStateMemento = new GlobalStateMemento();
public MyQVT(@NonNull TestProject testProject, @NonNull QVTiEnvironmentFactory environmentFactory) {
super(environmentFactory);
@@ -140,8 +139,8 @@
@Override
public synchronized void dispose() {
super.dispose();
- globalStateMemento.restoreGlobalState();
- globalStateMemento = null;
+ // globalStateMemento.restoreGlobalState();
+ // globalStateMemento = null;
}
public @NonNull Resource doLoad_ConcreteWithOCL(@NonNull URI inputURI) throws Exception {
@@ -479,6 +478,9 @@
myQVT.execute(tx);
myQVT.saveOutput(tx, "hsl", outputModelURI, referenceModelURI, null);
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvt/examples/0.1/HSVTree",
+ "http://www.eclipse.org/qvt/examples/0.1/HSVtoHSL",
+ "http://www.eclipse.org/qvt/examples/0.1/HSLTree");
}
public void testQVTiCompiler_ClassesCS2AS_CG() throws Exception {
@@ -509,9 +511,15 @@
myQVT.execute(tx);
myQVT.saveOutput(tx, "rightAS", outputModelURI, referenceModelURI, null);
myQVT.dispose();
+ cleanup("http://tracesmodel/1.0/classescstraces",
+ "http://ocldependencyanalysis/classescs/1.0",
+ "http://ocldependencyanalysis/classes/1.0");
}
public void testQVTiCompiler_ManualUML2RDBMS_CG() throws Exception {
+ EPackage.Registry.INSTANCE.put(manualuml2rdbms.rdbms.RDBMSPackage.eNS_URI, manualuml2rdbms.rdbms.RDBMSPackage.eINSTANCE);
+ EPackage.Registry.INSTANCE.put(manualuml2rdbms.uml2rdbms.UML2RDBMSPackage.eNS_URI, manualuml2rdbms.uml2rdbms.UML2RDBMSPackage.eINSTANCE);
+ EPackage.Registry.INSTANCE.put(manualuml2rdbms.uml.UMLPackage.eNS_URI, manualuml2rdbms.uml.UMLPackage.eINSTANCE);
URI modelsProjectURI = getModelsURI("ManualUML2RDBMS");
URI transformURI = modelsProjectURI.appendSegment("ManualUML2RDBMS.qvti");
URI genModelURI = modelsProjectURI.appendSegment("ManualUML2RDBMS.genmodel");
@@ -528,9 +536,15 @@
myQVT.execute(tx);
myQVT.saveOutput(tx, "rdbms", outputModelURI, referenceModelURI, ManualRDBMSNormalizer.INSTANCE);
myQVT.dispose();
+ cleanup(manualuml2rdbms.uml.UMLPackage.eNS_URI,
+ manualuml2rdbms.uml2rdbms.UML2RDBMSPackage.eNS_URI,
+ manualuml2rdbms.rdbms.RDBMSPackage.eNS_URI);
}
public void testQVTiCompiler_SimpleUML2RDBMS_CG() throws Exception {
+ EPackage.Registry.INSTANCE.put(simpleuml2rdbms.rdbms.RDBMSPackage.eNS_URI, simpleuml2rdbms.rdbms.RDBMSPackage.eINSTANCE);
+ EPackage.Registry.INSTANCE.put(simpleuml2rdbms.uml2rdbms.UML2RDBMSPackage.eNS_URI, simpleuml2rdbms.uml2rdbms.UML2RDBMSPackage.eINSTANCE);
+ EPackage.Registry.INSTANCE.put(simpleuml2rdbms.uml.UMLPackage.eNS_URI, simpleuml2rdbms.uml.UMLPackage.eINSTANCE);
URI modelsProjectURI = getModelsURI("SimpleUML2RDBMS");
URI transformURI = modelsProjectURI.appendSegment("SimpleUML2RDBMS.qvti");
URI genModelURI = modelsProjectURI.appendSegment("SimpleUML2RDBMS.genmodel");
@@ -547,6 +561,9 @@
myQVT.execute(tx);
myQVT.saveOutput(tx, "rdbms", outputModelURI, referenceModelURI, SimpleRDBMSNormalizer.INSTANCE);
myQVT.dispose();
+ cleanup(simpleuml2rdbms.uml.UMLPackage.eNS_URI,
+ simpleuml2rdbms.uml2rdbms.UML2RDBMSPackage.eNS_URI,
+ simpleuml2rdbms.rdbms.RDBMSPackage.eNS_URI);
}
public void testQVTiCompiler_Tree2TallTree_CG() throws Exception {
@@ -570,6 +587,7 @@
myQVT.saveOutput(tx, "talltree", outputModelURI, referenceModelURI, null);
Execution2GraphVisitor.writeGraphMLfile(tx, getTestURI("Tree2TallTree-execution.graphml"));
myQVT.dispose();
+ cleanup(TreePackage.eNS_URI);
}
public void testQVTiCompiler_Tree2TallTree_Changed_CG() throws Exception {
@@ -613,6 +631,7 @@
Execution2GraphVisitor.writeGraphMLfile(tx, getTestURI("Tree2TallTree-incChanged.graphml"));
myQVT.saveOutput(tx, "talltree", changedOutputModelURI, changedReferenceModelURI, null);
myQVT.dispose();
+ cleanup(TreePackage.eNS_URI);
}
public void testQVTiCompiler_Tree2TallTree_Copied_CG() throws Exception {
@@ -660,6 +679,9 @@
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvt/examples/0.1/List2List",
+ "http://www.eclipse.org/qvt/examples/0.1/Tree",
+ "http://www.eclipse.org/qvt/examples/0.1/TallTree");
}
public void testQVTiCompiler_Tree2TallTree_Deleted_CG() throws Exception {
@@ -705,6 +727,7 @@
myQVT.saveOutput(tx, "talltree", deletedOutputModelURI, deletedReferenceModelURI, null);
monitor.dispose();
myQVT.dispose();
+ cleanup(TreePackage.eNS_URI);
}
/* public void testQVTiCompiler_Tree2TallTree_Incremental_CG2() throws Exception {
diff --git a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiInterpreterTests.java b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiInterpreterTests.java
index 4bb02a2..9755e50 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiInterpreterTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/src/org/eclipse/qvtd/xtext/qvtimperative/tests/QVTiInterpreterTests.java
@@ -354,6 +354,9 @@
myQVT.saveExecutionGraph(getTestURI("ManualUML2RDBMS_LAZY.graphml"));
myQVT.checkOutput(outputURI, getModelsURI("ManualUML2RDBMS/ManualRDBMSPeopleValidate.xmi"), ManualRDBMSNormalizer.INSTANCE);
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvt/examples/0.1/ManualUML",
+ "http://www.eclipse.org/qvt/examples/0.1/ManualUML2RDBMS",
+ "http://www.eclipse.org/qvt/examples/0.1/ManualRDBMS");
}
/**
@@ -389,6 +392,9 @@
myQVT.saveExecutionGraph(getTestURI("SimpleUML2RDBMS_LAZY.graphml"));
myQVT.checkOutput(outputURI, getModelsURI("SimpleUML2RDBMS/SimpleRDBMSPeopleValidate.xmi"), SimpleRDBMSNormalizer.INSTANCE);
myQVT.dispose();
+ cleanup("http://www.eclipse.org/qvt/examples/0.1/SimpleUML",
+ "http://www.eclipse.org/qvt/examples/0.1/SimpleUML2RDBMS",
+ "http://www.eclipse.org/qvt/examples/0.1/SimpleRDBMS");
}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java b/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java
index d5b348e..05f096e 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrCompilerTests.java
@@ -397,6 +397,7 @@
}
finally {
myQVT4.dispose();
+ cleanup("http://www.eclipse.org/qvtd-example/org/eclipse/qvtd/xtext/qvtrelation/tests/newatl2qvtr/NewATL2QVTr");
}
}
@@ -886,6 +887,7 @@
}
finally {
myQVT2.dispose();
+ cleanup("http://www.eclipse.org/qvtd-example/org/eclipse/ocl/pivot2/ecore2pivotRoot/Ecore2PivotRoot");
}
}
diff --git a/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrDebuggerTests.java b/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrDebuggerTests.java
index 512376a..35a5d3d 100644
--- a/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrDebuggerTests.java
+++ b/tests/org.eclipse.qvtd.xtext.qvtrelation.tests/src/org/eclipse/qvtd/xtext/qvtrelation/tests/QVTrDebuggerTests.java
@@ -379,5 +379,8 @@
TestUtil.assertSameModel(expectedResource, actualResource);
ocl.dispose();
+ cleanup("http://www.eclipse.org/qvtd/xtext/qvtrelation/tests/hstm2fstm/FlatStateMachine",
+ "http://www.eclipse.org/qvtd/xtext/qvtrelation/tests/hstm2fstm/HierarchicalStateMachine",
+ "http://www.eclipse.org/qvtd-example/org/eclipse/qvtd/xtext/qvtrelation/tests/hstm2fstm/HierarchicalStateMachine2FlatStateMachine");
}
}