package org.togglz.spring.test.container; import static org.junit.Assert.assertEquals; import org.jboss.arquillian.container.test.api.Deployment; import org.jboss.arquillian.junit.Arquillian; import org.jboss.shrinkwrap.api.spec.WebArchive; import org.junit.Test; import org.junit.runner.RunWith; import org.togglz.core.context.FeatureContext; import org.togglz.spring.test.BasicFeatures; import org.togglz.test.Deployments; import org.togglz.test.Packaging; @RunWith(Arquillian.class) public class ManagedFeatureManagerTest { @Deployment public static WebArchive createDeployment() { return Deployments.getBasicWebArchive() .addAsLibrary(Deployments.getTogglzSpringArchive()) .addAsLibraries(Packaging.mavenDependencies() .artifact("org.springframework:spring-web:3.0.7.RELEASE") .asFiles()) .addClass(BasicFeatures.class) .addAsWebInfResource("applicationContext-container.xml") .setWebXML(Packaging.webAppDescriptor() .contextParam("org.togglz.FEATURE_MANAGER_PROVIDED", "true") .contextParam("contextConfigLocation", "/WEB-INF/applicationContext*.xml") .listener("org.springframework.web.context.ContextLoaderListener") .exportAsAsset()); } @Test public void containerManagedFeatureManagerShouldBeUsedIfAvailable() { assertEquals("I'm managed by Spring", FeatureContext.getFeatureManager().getName()); } }