package au.com.langdale.cimtoole.test.headless; import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.IncrementalProjectBuilder; import org.eclipse.core.runtime.CoreException; import au.com.langdale.cimtoole.builder.ProfileBuildlets.XSDBuildlet; import au.com.langdale.cimtoole.project.Task; import au.com.langdale.cimtoole.test.ProjectTest; import au.com.langdale.kena.OntModel; public class TransformTasks extends ProjectTest { public static final XSDBuildlet xsdBuildlet = new XSDBuildlet(); @Override protected void setUp() throws Exception { super.setUp(); setupSchema(); setupProfile(); } public final void testXSDGeneration() throws CoreException { OntModel model = Task.getProfileModel(profile); xsdBuildlet.setFlagged(model, true); workspace.run(Task.saveProfile(profile, model), monitor); workspace.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, monitor); assertTrue("generated XSD exists", getRelated("xsd").exists()); assertTrue("generated XSD valid", getRelated("xsd").findMaxProblemSeverity(null, true, IResource.DEPTH_ZERO) < IMarker.SEVERITY_ERROR); } public final void testCustomXSDGeneration() throws CoreException { workspace.run(Task.importRules(getRelated("xsd-xslt"), getSamplesFolder() + ALT_XSD_RULES), monitor); OntModel model = Task.getProfileModel(profile); xsdBuildlet.setFlagged(model, true); workspace.run(Task.saveProfile(profile, model), monitor); workspace.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, monitor); assertTrue("generated XSD exists", getRelated("xsd").exists()); assertTrue("generated XSD valid", getRelated("xsd").findMaxProblemSeverity(null, true, IResource.DEPTH_ZERO) < IMarker.SEVERITY_ERROR); } }