package com.mysema.rdfbean.beangen; import static org.junit.Assert.assertTrue; import java.io.File; import java.io.IOException; import java.util.Arrays; import org.junit.Before; import org.junit.Test; import com.mysema.rdfbean.TEST; import com.mysema.rdfbean.model.MiniRepository; import com.mysema.rdfbean.model.Repository; import com.mysema.rdfbean.model.UID; import com.mysema.rdfbean.model.XSD; import com.mysema.rdfbean.object.Session; import com.mysema.rdfbean.object.SessionUtil; import com.mysema.rdfbean.owl.OWLClass; import com.mysema.rdfbean.owl.Restriction; import com.mysema.rdfbean.rdfs.RDFProperty; import com.mysema.rdfbean.rdfs.RDFSClass; import com.mysema.rdfbean.rdfs.RDFSDatatype; import com.mysema.rdfbean.rdfs.RDFSResource; public class JavaBeanExporterTest { UID class1 = new UID(TEST.NS, "Class1"); UID class2 = new UID(TEST.NS, "Class2"); UID prop1 = new UID(TEST.NS, "prop1"); UID prop2 = new UID(TEST.NS, "prop2"); UID prop3 = new UID(TEST.NS, "prop2"); Session session; @Before public void setUp() { Repository repository = new MiniRepository(); session = SessionUtil.openSession(repository, RDFSClass.class.getPackage(), OWLClass.class.getPackage()); RDFSClass<?> xsdString = new RDFSDatatype(XSD.stringType); // classes OWLClass cl1 = new OWLClass(class1); OWLClass cl2 = new OWLClass(class2); cl2.addSuperClass(cl1); cl2.setOneOf(Arrays.asList(new RDFSResource(new UID(TEST.NS, "res1")), new RDFSResource(new UID(TEST.NS, "res2")))); // properties RDFProperty p1 = new RDFProperty(prop1).addDomain(cl1).addRange(xsdString); RDFProperty p2 = new RDFProperty(prop2).addDomain(cl1).addRange(cl2); RDFProperty p3 = new RDFProperty(prop3); // restrictions Restriction res = new Restriction(); res.setOnProperty(p3); res.setCardinality(2); res.setSomeValuesFrom(xsdString); assertTrue(res.isDefined()); cl1.addSuperClass(res); session.saveAll(cl1, cl2, p1, p2, p3, res); session.flush(); session.clear(); } @Test public void Export() throws IOException { JavaBeanExporter exporter = new JavaBeanExporter(true); exporter.addPackage(TEST.NS, "com.example"); exporter.export(session, new File("target/beanExport")); assertTrue(new File("target/beanExport/com/example/Class1.java").exists()); assertTrue(new File("target/beanExport/com/example/Class1.java").exists()); } }