use of org.hibernate.cfg.Mappings in project jbosstools-hibernate by jbosstools.
the class HibernateMappingExporterFacadeTest method testStart.
@Test
public void testStart() throws Exception {
Configuration configuration = new Configuration();
RootClass persistentClass = new RootClass();
Table table = new Table("FOO");
persistentClass.setClassName("Foo");
persistentClass.setEntityName("Foo");
persistentClass.setTable(table);
Mappings mappings = configuration.createMappings();
mappings.addClass(persistentClass);
hibernateMappingExporter.setConfiguration(configuration);
hibernateMappingExporter.setOutputDirectory(outputDir);
final File fooHbmXml = new File(outputDir, "Foo.hbm.xml");
// First without a 'delegate' exporter
Assert.assertFalse(fooHbmXml.exists());
hibernateMappingExporterFacade.start();
Assert.assertTrue(fooHbmXml.exists());
Assert.assertTrue(fooHbmXml.delete());
// Now set a 'delegate' and invoke 'start' again
final File dummyDir = new File(outputDir, "dummy");
dummyDir.mkdir();
Assert.assertTrue(dummyDir.exists());
IExportPOJODelegate delegate = new IExportPOJODelegate() {
@Override
public void exportPOJO(Map<Object, Object> map, IPOJOClass pojoClass) {
Assert.assertTrue(dummyDir.delete());
Map<String, Object> m = new HashMap<>();
for (Object key : map.keySet()) {
m.put((String) key, map.get(key));
}
hibernateMappingExporter.superExportPOJO(m, (POJOClass) ((IFacade) pojoClass).getTarget());
}
};
Field delegateField = HibernateMappingExporterExtension.class.getDeclaredField("delegateExporter");
delegateField.setAccessible(true);
delegateField.set(hibernateMappingExporter, delegate);
hibernateMappingExporterFacade.start();
Assert.assertFalse(dummyDir.exists());
Assert.assertTrue(fooHbmXml.exists());
Assert.assertTrue(fooHbmXml.delete());
Assert.assertTrue(outputDir.exists());
}
use of org.hibernate.cfg.Mappings in project jbosstools-hibernate by jbosstools.
the class Cfg2HbmToolFacadeTest method testGetPropertyTag.
public void testGetPropertyTag() throws Exception {
RootClass rc = new RootClass();
Property p = new Property();
Mappings m = (Mappings) Proxy.newProxyInstance(FACADE_FACTORY.getClassLoader(), new Class[] { Mappings.class }, new TestInvocationHandler());
SimpleValue sv = new SimpleValue(m);
sv.setTypeName("foobar");
p.setValue(sv);
p.setPersistentClass(rc);
rc.setVersion(p);
IProperty property = new AbstractPropertyFacade(FACADE_FACTORY, p) {
};
Assert.assertEquals("version", cfg2HbmToolFacade.getTag(property));
}
Aggregations