package org.specs2.springexample; import org.hsqldb.jdbc.JDBCDriver; import org.specs2.spring.annotation.*; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.transaction.TransactionConfiguration; import org.springframework.transaction.annotation.Transactional; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** * @author janmachacek */ @Jndi( dataSources = { @DataSource(name = "java:comp/env/jdbc/test", driverClass = JDBCDriver.class, url = "jdbc:hsqldb:mem:test"), @DataSource(name = "java:comp/env/jdbc/external", driverClass = JDBCDriver.class, url = "jdbc:hsqldb:mem:external") }, mailSessions = @MailSession(name = "java:comp/env/mail/foo"), transactionManager = @TransactionManager(name = "java:comp/TransactionManager"), jms = @Jms( connectionFactoryName = "java:comp/env/jms/connectionFactory", queues = {@JmsQueue(name = "java:comp/env/jms/requests"), @JmsQueue(name = "java:comp/env/jms/responses")}, topics = {@JmsTopic(name = "java:comp/env/jms/cacheFlush"), @JmsTopic(name = "java:comp/env/jms/ruleUpdate")} ), workManagers = @WorkManager(name = "java:comp/env/work/WorkManager", kind = WorkManager.Kind.CommonJ, maximumThreads = 5, minimumThreads = 3) ) @Transactional @TransactionConfiguration(defaultRollback = true) @ContextConfiguration("classpath*:/META-INF/spring/module-context.xml") @UseProfile("ACU") @SystemEnvironment({"efoo=bar;ebaz=null"}) @SystemProperties({"pfoo=bar;pbaz=null"}) @Retention(RetentionPolicy.RUNTIME) public @interface IntegrationTest { }