[unrelated] Add copyFiles for testing
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitPluginFileSystem.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitPluginFileSystem.java
index eee0865..29bf974 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitPluginFileSystem.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitPluginFileSystem.java
@@ -31,7 +31,9 @@
 import org.eclipse.core.runtime.Path;
 import org.eclipse.emf.common.util.URI;
 import org.eclipse.emf.common.util.WrappedException;
+import org.eclipse.emf.ecore.resource.ResourceSet;
 import org.eclipse.emf.ecore.resource.URIConverter;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.eclipse.ocl.pivot.internal.resource.ProjectMap;
@@ -156,6 +158,31 @@
 			return getOutputFile(lastSegment, inputStream);
 		}
 
+		@Override
+		public @NonNull TestFile copyFiles(@NonNull ProjectManager projectManager, @Nullable TestFolder testFolder, @NonNull URI sourceFolderURI, @NonNull String @NonNull ... fileNames) throws IOException {
+			ResourceSet resourceSet = new ResourceSetImpl();
+			projectManager.initializeResourceSet(resourceSet);
+			URIConverter uriConverter = resourceSet.getURIConverter();
+			JUnitPluginTestFile firstOutputFile = null;
+			for (@NonNull String fileName : fileNames) {
+				URI sourceURI = sourceFolderURI.appendSegment(fileName);
+				InputStream inputStream = uriConverter.createInputStream(sourceURI);
+				String lastSegment = sourceURI.lastSegment();
+				if (testFolder != null) {
+					IContainer iContainer = testFolder.getIContainer();
+					IPath projectRelativePath = iContainer.getFile(new Path(lastSegment)).getProjectRelativePath();
+					lastSegment = projectRelativePath.toString();
+				}
+				assert lastSegment != null;
+				JUnitPluginTestFile outputFile = getOutputFile(lastSegment, inputStream);
+				if (firstOutputFile == null) {
+					firstOutputFile = outputFile;
+				}
+			}
+			assert firstOutputFile != null;
+			return firstOutputFile;
+		}
+
 		protected @NonNull JUnitPluginTestFile createFilePath(@NonNull String testFilePath, @Nullable InputStream inputStream) {
 			JUnitPluginTestFolder node = this;
 			@NonNull String[] testFileSegments = testFilePath.split("/");
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitStandaloneFileSystem.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitStandaloneFileSystem.java
index af7da01..5765b6d 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitStandaloneFileSystem.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/JUnitStandaloneFileSystem.java
@@ -24,7 +24,9 @@
 import org.eclipse.core.resources.IContainer;
 import org.eclipse.core.resources.IProject;
 import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.ResourceSet;
 import org.eclipse.emf.ecore.resource.URIConverter;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.eclipse.ocl.pivot.resource.ProjectManager;
@@ -121,6 +123,29 @@
 			return getOutputFile(lastSegment, inputStream);
 		}
 
+		@Override
+		public @NonNull TestFile copyFiles(@NonNull ProjectManager projectManager, @Nullable TestFolder testFolder, @NonNull URI sourceFolderURI, @NonNull String @NonNull ... fileNames) throws IOException {
+			ResourceSet resourceSet = new ResourceSetImpl();
+			projectManager.initializeResourceSet(resourceSet);
+			URIConverter uriConverter = resourceSet.getURIConverter();
+			JUnitStandaloneTestFile firstOutputFile = null;
+			for (@NonNull String fileName : fileNames) {
+				URI sourceURI = sourceFolderURI.appendSegment(fileName);
+				InputStream inputStream = uriConverter.createInputStream(sourceURI);
+				String lastSegment = sourceURI.lastSegment();
+				assert lastSegment != null;
+				if (testFolder != null) {
+					lastSegment = testFolder.getName() + "/" + lastSegment;
+				}
+				JUnitStandaloneTestFile outputFile = getOutputFile(lastSegment, inputStream);
+				if (firstOutputFile == null) {
+					firstOutputFile = outputFile;
+				}
+			}
+			assert firstOutputFile != null;
+			return firstOutputFile;
+		}
+
 		protected @NonNull JUnitStandaloneTestFile createFilePath(@NonNull String testFilePath) {
 			JUnitStandaloneTestFolder node = this;
 			@NonNull String[] testFileSegments = testFilePath.split("/");
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/TestProject.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/TestProject.java
index fea26cf..a3f09b5 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/TestProject.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/org/eclipse/ocl/examples/xtext/tests/TestProject.java
@@ -26,6 +26,7 @@
 public interface TestProject extends TestFolder
 {
 	@NonNull TestFile copyFile(@NonNull URIConverter uriConverter, @Nullable TestFolder testFolder, @NonNull URI sourceURI) throws IOException;
+	@NonNull TestFile copyFiles(@NonNull ProjectManager projectManager, @Nullable TestFolder testFolder, @NonNull URI sourceFolderURI, @NonNull String @NonNull ... fileNames) throws IOException;
 
 	@NonNull ProjectManager createTestProjectManager();