CCM NG: Improved createDeployment method for Arquillian tests
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4322 8810af33-2d31-482b-a856-94f89814c4dfpull/2/head
parent
cc84642782
commit
1c08efca11
|
|
@ -43,8 +43,10 @@ import org.libreccm.tests.categories.IntegrationTest;
|
|||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.IntStream;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
|
@ -97,31 +99,37 @@ public class ShortcutRepositoryTest {
|
|||
.loadPomFromFile("pom.xml");
|
||||
final PomEquippedResolveStage dependencies = pom
|
||||
.importCompileAndRuntimeDependencies();
|
||||
dependencies.addDependency(MavenDependencies.createDependency(
|
||||
"org.libreccm:ccm-core", ScopeType.RUNTIME, false));
|
||||
dependencies.addDependency(MavenDependencies.createDependency(
|
||||
"org.libreccm:ccm-testutils", ScopeType.RUNTIME, false));
|
||||
dependencies.addDependency(MavenDependencies.createDependency(
|
||||
"net.sf.saxon:Saxon-HE", ScopeType.RUNTIME, false));
|
||||
dependencies.addDependency(MavenDependencies.createDependency(
|
||||
"org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven",
|
||||
ScopeType.RUNTIME, false));
|
||||
final File[] libsWithCcmCore = dependencies.resolve().withTransitivity()
|
||||
|
||||
final File[] libFiles = dependencies.resolve().withTransitivity()
|
||||
.asFile();
|
||||
|
||||
final List<File> libsList = new ArrayList<>(libsWithCcmCore.length - 1);
|
||||
IntStream.range(0, libsWithCcmCore.length).forEach(i -> {
|
||||
final File lib = libsWithCcmCore[i];
|
||||
if (!lib.getName().startsWith("ccm-core")) {
|
||||
libsList.add(lib);
|
||||
}
|
||||
});
|
||||
final File[] libs = libsList.toArray(new File[libsList.size()]);
|
||||
final PomEquippedResolveStage pomCcmCore = Maven
|
||||
.resolver()
|
||||
.loadPomFromFile("../ccm-core/pom.xml");
|
||||
final PomEquippedResolveStage dependenciesCcmCore = pomCcmCore
|
||||
.importCompileAndRuntimeDependencies();
|
||||
final File[] ccmCoreLibFiles = dependenciesCcmCore.resolve()
|
||||
.withTransitivity().asFile();
|
||||
|
||||
for (File lib : libs) {
|
||||
System.err.printf("Adding file '%s' to test archive...%n",
|
||||
lib.getName());
|
||||
}
|
||||
final List<File> libsList = Arrays.stream(libFiles)
|
||||
.filter(lib -> !lib.getName().startsWith("ccm-"))
|
||||
.collect(Collectors.toList());
|
||||
final List<File> ccmCoreLibsList = Arrays.stream(ccmCoreLibFiles)
|
||||
.filter(lib -> !lib.getName().startsWith("ccm-"))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
final File[] libs = libsList.toArray(new File[libsList.size()]);
|
||||
Arrays.stream(libs)
|
||||
.forEach(lib -> System.err.printf(
|
||||
"Adding file '%s' to test archive...%n",
|
||||
lib.getName()));
|
||||
|
||||
final File[] ccmCoreLibs = ccmCoreLibsList.toArray(
|
||||
new File[ccmCoreLibsList.size()]);
|
||||
Arrays.stream(ccmCoreLibs)
|
||||
.forEach(lib -> System.err.printf(
|
||||
"Adding file '%s' to test archive...%n",
|
||||
lib.getName()));
|
||||
|
||||
return ShrinkWrap.create(
|
||||
WebArchive.class,
|
||||
|
|
@ -139,9 +147,12 @@ public class ShortcutRepositoryTest {
|
|||
.addPackage(org.libreccm.security.Permission.class.getPackage())
|
||||
.addPackage(org.libreccm.web.CcmApplication.class.getPackage())
|
||||
.addPackage(org.libreccm.workflow.Workflow.class.getPackage())
|
||||
.addPackage(org.libreccm.tests.categories.IntegrationTest.class
|
||||
.getPackage())
|
||||
.addClass(org.libreccm.shortcuts.Shortcut.class)
|
||||
.addClass(org.libreccm.shortcuts.ShortcutRepository.class)
|
||||
.addAsLibraries(libs)
|
||||
.addAsLibraries(ccmCoreLibs)
|
||||
.addAsResource("test-persistence.xml",
|
||||
"META-INF/persistence.xml")
|
||||
.addAsWebInfResource("test-web.xml", "WEB-INF/web.xml")
|
||||
|
|
|
|||
Loading…
Reference in New Issue