package com.mysema.rdfbean.beangen; import static org.junit.Assert.*; import java.util.List; import org.junit.Before; import org.junit.Test; import com.mysema.query.codegen.EntityType; import com.mysema.rdfbean.owl.Restriction; import com.mysema.rdfbean.rdfs.RDFSClass; public class JavaBeanExporterTest extends AbstractExportTest { private JavaBeanExporter exporter; @Before public void setUp() { exporter = new JavaBeanExporter(true); exporter.addPackage("http://www.mysema.com/semantics/blog/#", "com.mysema.blog"); exporter.addPackage("http://purl.org/dc/elements/1.1/", "com.mysema.dc"); exporter.addPackage("http://purl.org/dc/terms/", "com.mysema.dc"); exporter.addPackage("http://www.mysema.com/rdfbean/demo#", "com.mysema.demo"); exporter.addPackage("http://www.w3.org/TR/2003/PR-owl-guide-20031209/wine#", "com.mysema.wine"); } @SuppressWarnings("unchecked") @Test public void createBeanType() { List<RDFSClass> rdfTypes = session.findInstances(RDFSClass.class); assertFalse(rdfTypes.isEmpty()); for (RDFSClass<?> rdfType : rdfTypes) { if (rdfType.getId().isBNode()) { continue; } EntityType entityType = exporter.createBeanType(rdfType); // supertype count int supertypes = 0; for (RDFSClass<?> superClass : rdfType.getSuperClasses()) { if (superClass != null && !superClass.getClass().equals(Restriction.class)) { supertypes++; } } assertEquals(supertypes, entityType.getSuperTypes().size()); // property count assertTrue(entityType.getProperties().size() >= rdfType.getProperties().size()); } } }