private void doTestNewBatchArtifactWizard( BatchArtifactType type, String typeName, boolean deriveFromInterface, String artifactName, List<String> properties) throws CoreException { NewBatchArtifactWizardContext context = new NewBatchArtifactWizardContext(); context.init(NewBatchArtifactWizard.WIZARD_ID, "batch", typeName); try { NewBatchArtifactWizardPage page = context.wizard.getPage(); page.setArtifact(type, true); if (deriveFromInterface) { page.setDeriveFromInterface(); } if (artifactName != null) { page.setArtifactName(artifactName); } if (properties != null && !properties.isEmpty()) { page.setProperties(properties); } context.wizard.performFinish(); String text = context.getNewTypeContent(); if (type.getClassName() != null && !deriveFromInterface) { assertTrue(text.contains("extends " + getElememtName(type.getClassName()))); } else { assertTrue(text.contains("implements " + getElememtName(type.getInterfaceName()))); } assertTrue(text.contains("@Named")); if (artifactName != null) { assertTrue(text.contains("@Named(\"" + artifactName + "\")")); } if (properties != null && !properties.isEmpty()) { assertTrue(text.contains("@Inject")); assertTrue(text.contains("@BatchProperty")); for (String s : properties) { assertTrue(text.contains("String " + s + ";")); } } context.findType().getResource().delete(true, new NullProgressMonitor()); } finally { context.close(); } }