Search in sources :

Example 6 with TestModuleLoader

use of org.jboss.modules.util.TestModuleLoader in project jboss-modules by jboss-modules.

the class ModuleIteratorTest method testMetaInfServicesIterator.

@Test
public void testMetaInfServicesIterator() throws Exception {
    TestModuleLoader moduleLoader = new TestModuleLoader();
    ModuleSpec.Builder builder = ModuleSpec.build(MODULE_A);
    builder.addDependency(new ModuleDependencySpecBuilder().setName(MODULE_B.toString()).build());
    PathFilter importFilter = PathFilters.getMetaInfServicesFilter();
    builder.addDependency(new ModuleDependencySpecBuilder().setImportFilter(importFilter).setExport(true).setModuleLoader(moduleLoader).setName(MODULE_B.toString()).build());
    moduleLoader.addModuleSpec(builder.create());
    builder = ModuleSpec.build(MODULE_B);
    ResourceLoader resB = new JarFileResourceLoader("jarB", toJarFile(getModuleB()));
    builder.addResourceRoot(ResourceLoaderSpec.createResourceLoaderSpec(resB));
    builder.addDependency(DependencySpec.createLocalDependencySpec());
    moduleLoader.addModuleSpec(builder.create());
    Module moduleA = moduleLoader.loadModule(MODULE_A);
    Iterator<Resource> itres = moduleA.iterateResources(PathFilters.getMetaInfServicesFilter());
    Assert.assertTrue("Found a resource", itres.hasNext());
    Assert.assertEquals("META-INF/services/org/apache/camel/component/jms", itres.next().getName());
    Assert.assertFalse("No other resource", itres.hasNext());
}
Also used : PathFilter(org.jboss.modules.filter.PathFilter) TestModuleLoader(org.jboss.modules.util.TestModuleLoader) Test(org.junit.Test)

Aggregations

TestModuleLoader (org.jboss.modules.util.TestModuleLoader)6 Before (org.junit.Before)3 Test (org.junit.Test)3 ImportedClass (org.jboss.modules.test.ImportedClass)2 Field (java.lang.reflect.Field)1 HashSet (java.util.HashSet)1 List (java.util.List)1 Map (java.util.Map)1 MultiplePathFilterBuilder (org.jboss.modules.filter.MultiplePathFilterBuilder)1 PathFilter (org.jboss.modules.filter.PathFilter)1 ClassA (org.jboss.modules.test.ClassA)1 JAXPCaller (org.jboss.modules.test.JAXPCaller)1 Ignore (org.junit.Ignore)1