@Test
public void testBeansProjectOneManualConfigOneSpringBootAutoConfigOneXmlAutoConfig() throws Exception {
IProject project = StsTestUtil.createPredefinedProject("beans-autoconfig-java-and-xml-tests", "org.springframework.ide.eclipse.beans.core.tests");
try {
BeansProject beansProject = new BeansProject(model, project);
model.addProject(beansProject);
beansProject.getConfigs();
IJobManager jobMan = Job.getJobManager();
jobMan.join("populateAutoConfigsJobFamily", null);
Set<IBeansConfig> configs = beansProject.getConfigs();
assertEquals(3, configs.size());
int manualConfig = 0;
int autoConfig = 0;
for (IBeansConfig config : configs) {
if (config.getType() == IBeansConfig.Type.MANUAL) {
manualConfig++;
} else if (config.getType() == IBeansConfig.Type.AUTO_DETECTED) {
autoConfig++;
}
}
assertEquals(1, manualConfig);
assertEquals(2, autoConfig);
Set<String> autoConfigs = beansProject.getAutoConfigNames();
assertEquals(2, autoConfigs.size());
assertTrue(autoConfigs.contains("java:org.test.advanced.SpringBootConfigClass"));
assertTrue(autoConfigs.contains("WebContent/WEB-INF/spring/root-context.xml"));
Set<String> autoConfigSetNames = beansProject.getAutoConfigSetNames();
assertEquals(0, autoConfigSetNames.size());
} finally {
waitForJobsToComplete();
project.delete(true, null);
}