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());
}
Aggregations