package org.infinispan.test.integration.as.jms.infinispan; import static org.infinispan.test.integration.as.VersionTestHelper.manifestDependencies; import org.jboss.arquillian.container.test.api.Deployment; import org.jboss.arquillian.junit.Arquillian; import org.jboss.shrinkwrap.api.Archive; import org.junit.runner.RunWith; /** * Execute the tests in {@link SearchNewEntityJmsMasterSlaveAndInfinispan} using the modules in JBoss AS to add the * required dependencies. * * @author Davide D'Alto * @author Sanne Grinovero */ @RunWith(Arquillian.class) public class SearchNewEntityJmsMasterSlaveUsingInfinispanAndModulesIT extends SearchNewEntityJmsMasterSlaveAndInfinispan { @Deployment(name = "master", order = 1) public static Archive<?> createDeploymentMaster() throws Exception { Archive<?> master = DeploymentJmsMasterSlaveAndInfinispan.createMaster("master"); addInfinispanMainDependency(master); return master; } @Deployment(name = "slave-1", order = 2) public static Archive<?> createDeploymentSlave1() throws Exception { Archive<?> slave = DeploymentJmsMasterSlaveAndInfinispan.createSlave("slave-1"); addInfinispanMainDependency(slave); return slave; } @Deployment(name = "slave-2", order = 3) public static Archive<?> createDeploymentSlave2() throws Exception { Archive<?> slave = DeploymentJmsMasterSlaveAndInfinispan.createSlave("slave-2"); addInfinispanMainDependency(slave); return slave; } private static void addInfinispanMainDependency(Archive<?> archive) { //This is intentionally using the Infinispan "main" slot to verify there are no conflicts between using the Infinispan //version included in WildFly by default (usually older than the Infinispan version being built) and the latest Hibernate Search slot, //which is being wired up to the Infinispan version being built. //So this test makes sure both version of Infinispan can co-exist in this use case. archive.add(manifestDependencies("org.infinispan:main services"), "META-INF/MANIFEST.MF"); } }