{
SchemaImpl schema = new SchemaImpl("module");
schema.setId("Baz");
DefaultErrorHandler errorHandler = new DefaultErrorHandler();
RegistryDefinition definition = new RegistryDefinitionImpl();
ModuleDescriptor fooBar = new ModuleDescriptor(null, errorHandler);
fooBar.setModuleId("foo.bar");
fooBar.addSchema(schema);
ModuleDescriptor zipZoop = new ModuleDescriptor(null, errorHandler);
zipZoop.setModuleId("zip.zoop");
ConfigurationPointDescriptor cpd = new ConfigurationPointDescriptor();
cpd.setId("Zap");
cpd.setContributionsSchemaId("foo.bar.Baz");
zipZoop.addConfigurationPoint(cpd);
XmlModuleDescriptorProcessor processor = new XmlModuleDescriptorProcessor(definition,
errorHandler);
processor.processModuleDescriptor(fooBar);
processor.processModuleDescriptor(zipZoop);
XmlExtensionResolver extensionResolver = new XmlExtensionResolver(definition, errorHandler);
extensionResolver.resolveSchemas();
ConfigurationPointDefinition point = definition.getConfigurationPoint("zip.zoop.Zap");
ConfigurationParserDefinition parserDef = point.getParser(HiveMindSchemaParser.INPUT_FORMAT_NAME);
assertNotNull(parserDef);
assertEquals(parserDef.getParserConstructor().getClass(), HiveMindSchemaParserConstructor.class);