diff options
author | Ed Willink | 2018-11-26 21:47:11 +0000 |
---|---|---|
committer | Ed Willink | 2018-11-30 11:45:56 +0000 |
commit | bdba2bd6e1170791572673771c353346222a41fb (patch) | |
tree | d00dcc2c352f5b0140064833fffcf1e5f5012221 | |
parent | 73a4eaa7c243033e5e208ddfea6ec1d44631b456 (diff) | |
download | org.eclipse.qvtd-bdba2bd6e1170791572673771c353346222a41fb.tar.gz org.eclipse.qvtd-bdba2bd6e1170791572673771c353346222a41fb.tar.xz org.eclipse.qvtd-bdba2bd6e1170791572673771c353346222a41fb.zip |
[514590] Validate the *.qvtr prior to compilation
2 files changed, 10 insertions, 2 deletions
diff --git a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/utilities/CompilerUtil.java b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/utilities/CompilerUtil.java index 60a8a03e2..9a6baba0f 100644 --- a/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/utilities/CompilerUtil.java +++ b/plugins/org.eclipse.qvtd.compiler/src/org/eclipse/qvtd/compiler/internal/utilities/CompilerUtil.java @@ -151,7 +151,7 @@ public class CompilerUtil extends QVTscheduleUtil public static void assertNoValidationErrors(@NonNull String prefix, @NonNull Resource resource) { for (EObject eObject : resource.getContents()) { - assertNoValidationErrors(prefix, eObject); + assertNoValidationErrors(prefix + " of '" + resource.getURI() + "'", eObject); } } @@ -163,7 +163,7 @@ public class CompilerUtil extends QVTscheduleUtil return; } StringBuilder s = new StringBuilder(); - s.append(children.size() + " validation errors"); + s.append(string + ": " + children.size() + " validation errors"); for (Diagnostic child : children){ s.append("\n\t"); if (child.getData().size() > 0) { 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 b055664a9..9187fb3bb 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 @@ -27,6 +27,7 @@ import org.eclipse.ocl.examples.xtext.tests.TestFileSystemHelper; import org.eclipse.ocl.pivot.PivotPackage; import org.eclipse.ocl.pivot.internal.manager.PivotMetamodelManager; import org.eclipse.ocl.pivot.internal.resource.ProjectMap; +import org.eclipse.ocl.pivot.messages.StatusCodes; import org.eclipse.ocl.pivot.model.OCLstdlib; import org.eclipse.ocl.pivot.resource.ProjectManager; import org.eclipse.ocl.pivot.utilities.ToStringVisitor; @@ -83,12 +84,19 @@ public class QVTrCompilerTests extends LoadTestCase } }; } + + @Override + public @NonNull ImperativeTransformation qvtr2qvti(@NonNull Resource qvtrResource, @NonNull Iterable<@NonNull String> enforcedOutputNames) throws IOException { + assertNoValidationErrors("QVTr validation", qvtrResource); + return super.qvtr2qvti(qvtrResource, enforcedOutputNames); + } } private boolean keepOldJavaFiles = false; public MyQVT(@NonNull ProjectManager projectManager, @NonNull String testProjectName, @NonNull URI testBundleURI, @NonNull URI txURI, @NonNull URI intermediateFileNamePrefixURI, @NonNull URI srcFileURI, @NonNull URI binFileURI) { super(projectManager, testProjectName, testBundleURI, txURI, intermediateFileNamePrefixURI, srcFileURI, binFileURI); + getEnvironmentFactory().setSafeNavigationValidationSeverity(StatusCodes.Severity.WARNING); } @Override |