Introduce JXL DAO support
[lgpl/argeo-commons.git] / server / runtime / org.argeo.server.jxl / src / test / java / org / argeo / server / jxl / dao / JxlDaoSupportTest.java
index b79a8a03d82ebc1a6431a19c888e888fc3cbddf4..5de2b5af1239269f0a739d18b9f67ba38d9fb154 100644 (file)
@@ -1,26 +1,40 @@
 package org.argeo.server.jxl.dao;
 
 import java.io.InputStream;
+import java.util.List;
 
 import junit.framework.TestCase;
 
 public class JxlDaoSupportTest extends TestCase {
-       public void testBasic() {
+       public void testBasic() throws Exception {
                JxlDaoSupport jsd = new JxlDaoSupport();
-               InputStream in = getClass().getResourceAsStream("/dao/simple.xls");
-               jsd.load(in);
-
-               SimpleObject soAaa = jsd.getByKey(SimpleObject.class, "aaa");
-               assertNotNull(soAaa);
-               assertEquals("aaa", soAaa.getString());
-               assertEquals(1, soAaa.getInteger().intValue());
-               assertNotNull(soAaa.getOtherObject());
-               assertEquals("USD", soAaa.getOtherObject().getKey());
-               assertEquals("US Dollar", soAaa.getOtherObject().getValue());
-
-               SimpleObject soBbb = jsd.getByKey(SimpleObject.class, "bbb");
-               assertNotNull(soBbb.getOtherObject());
-               assertEquals("bbb", ((SimpleObject) soBbb.getOtherObject().getValue())
-                               .getString());
+               jsd.getExternalRefs().put("test", new OtherObject());
+
+               InputStream in = null;
+               try {
+                       in = getClass().getResourceAsStream("/dao/simple.xls");
+                       jsd.load(in);
+
+                       SimpleObject soAaa = jsd.getByKey(SimpleObject.class, "aaa");
+                       assertNotNull(soAaa);
+                       assertEquals("aaa", soAaa.getString());
+                       assertEquals(1, soAaa.getInteger().intValue());
+                       assertNotNull(soAaa.getOtherObject());
+                       assertEquals("USD", soAaa.getOtherObject().getKey());
+                       assertEquals("US Dollar", soAaa.getOtherObject().getValue());
+
+                       SimpleObject soBbb = jsd.getByKey(SimpleObject.class, "bbb");
+                       assertNotNull(soBbb.getOtherObject());
+                       assertEquals("bbb", ((SimpleObject) soBbb.getOtherObject()
+                                       .getValue()).getString());
+
+                       List<SimpleObject> simpleObjects = jsd.list(SimpleObject.class,
+                                       null);
+                       assertEquals(2, simpleObjects.size());
+               } finally {
+                       if (in != null)
+                               in.close();
+               }
+
        }
 }