package org.compass.core.test.property.simple; import java.io.File; import java.math.BigDecimal; import java.net.URL; import java.util.Calendar; import java.util.Date; import java.util.Locale; import org.compass.core.CompassSession; import org.compass.core.CompassTransaction; import org.compass.core.test.AbstractTestCase; /** * @author kimchy */ public class SimpleTypesTests extends AbstractTestCase { protected String[] getMappings() { return new String[]{"property/simple/mapping.cpm.xml"}; } public void testSimpleTypes() throws Exception { CompassSession session = openSession(); CompassTransaction tr = session.beginTransaction(); Long id = new Long(1); SimpleTypes o = new SimpleTypes(); o.setId(id); o.setOBigDecimal(new BigDecimal(22.22d)); o.setOBoolean(Boolean.TRUE); o.setOByte(new Byte((byte) 1)); o.setOChar(new Character('A')); Date date = new Date(); o.setODate(date); Calendar c = Calendar.getInstance(); c.set(2001, 1, 1); o.setOCalendar(c); o.setODouble(new Double(2.456d)); o.setOFile(new File("test/testfile")); o.setOInteger(new Integer(23456)); o.setOLong(new Long(345345)); o.setOShort(new Short((short) 234)); o.setOString("TEST"); o.setOStringBuffer(new StringBuffer("TEST STRING BUFFER")); o.setOURL(new URL("http://www.opensymphony.com/compass")); o.setSBoolean(true); o.setSByte((byte) 2); o.setSChar('B'); o.setSDouble(12.34456d); o.setSInt(8786095); o.setSLong(234234); o.setSShort((short) 34554); o.setSFloat(23.45f); o.setOFloat(new Float(567.567f)); o.setOLocale(Locale.ENGLISH); session.save(o); o = (SimpleTypes) session.load(SimpleTypes.class, id); assertEquals(new BigDecimal(22.22d), o.getOBigDecimal()); assertEquals(Boolean.TRUE, o.getOBoolean()); assertEquals(new Byte((byte) 1), o.getOByte()); assertEquals(new Character('A'), o.getOChar()); assertEquals(date, o.getODate()); assertEquals(c, o.getOCalendar()); assertEquals(new Double(2.456d), o.getODouble()); assertEquals(new File("test/testfile").getAbsolutePath(), o.getOFile().getAbsolutePath()); assertEquals(new Integer(23456), o.getOInteger()); assertEquals(new Long(345345), o.getOLong()); assertEquals(new Short((short) 234), o.getOShort()); assertEquals("TEST", o.getOString()); assertEquals("TEST STRING BUFFER", o.getOStringBuffer().toString()); assertEquals(new URL("http://www.opensymphony.com/compass").toExternalForm(), o.getOURL().toExternalForm()); assertEquals(true, o.isSBoolean()); assertEquals((byte) 2, o.getSByte()); assertEquals('B', o.getSChar()); assertEquals(12.34456d, o.getSDouble(), 0.000001d); assertEquals(8786095, o.getSInt()); assertEquals(234234, o.getSLong()); assertEquals((short) 34554, o.getSShort()); assertEquals(23.45f, o.getSFloat(), 0.000001f); assertEquals(new Float(567.567f), o.getOFloat()); assertEquals(Locale.ENGLISH, o.getOLocale()); tr.commit(); session.close(); session = openSession(); tr = session.beginTransaction(); o = (SimpleTypes) session.load(SimpleTypes.class, id); assertEquals(new BigDecimal(22.22d), o.getOBigDecimal()); assertEquals(Boolean.TRUE, o.getOBoolean()); assertEquals(new Byte((byte) 1), o.getOByte()); assertEquals(new Character('A'), o.getOChar()); assertEquals(date, o.getODate()); assertEquals(c, o.getOCalendar()); assertEquals(new Double(2.456d), o.getODouble()); assertEquals(new File("test/testfile").getAbsolutePath(), o.getOFile().getAbsolutePath()); assertEquals(new Integer(23456), o.getOInteger()); assertEquals(new Long(345345), o.getOLong()); assertEquals(new Short((short) 234), o.getOShort()); assertEquals("TEST", o.getOString()); assertEquals("TEST STRING BUFFER", o.getOStringBuffer().toString()); assertEquals(new URL("http://www.opensymphony.com/compass").toExternalForm(), o.getOURL().toExternalForm()); assertEquals(true, o.isSBoolean()); assertEquals((byte) 2, o.getSByte()); assertEquals('B', o.getSChar()); assertEquals(12.34456d, o.getSDouble(), 0.000001d); assertEquals(8786095, o.getSInt()); assertEquals(234234, o.getSLong()); assertEquals((short) 34554, o.getSShort()); assertEquals(23.45f, o.getSFloat(), 0.000001f); assertEquals(new Float(567.567f), o.getOFloat()); assertEquals(Locale.ENGLISH, o.getOLocale()); tr.commit(); session.close(); } }