blob: 029f67eab8d7b1a29bd5701d7c6d51b932b18580 [file] [log] [blame]
/*
* Copyright (c) 1998, 2021 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
// Contributors:
// dmccann - May 6/2008 - 1.0M7 - Initial implementation
package org.eclipse.persistence.testing.sdo.model.dataobject;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.TimeZone;
import javax.xml.XMLConstants;
import junit.textui.TestRunner;
import org.eclipse.persistence.sdo.SDOConstants;
import org.eclipse.persistence.sdo.SDOProperty;
import org.eclipse.persistence.testing.sdo.SDOTestCase;
import commonj.sdo.DataObject;
import commonj.sdo.Type;
public class SetAndGetWithManyPropertyViaPathTestCases extends SDOTestCase {
public SetAndGetWithManyPropertyViaPathTestCases(String name) {
super(name);
super.setUp();
}
public static void main(String[] args) {
String[] arguments = { "-c", "org.eclipse.persistence.testing.sdo.model.dataobject.SetAndGetWithManyPropertyViaPathTestCases" };
TestRunner.main(arguments);
}
// set via path tests
public void testMyBigDecimalProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myBigDecimalDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myBigDecimal");
myProp.set("type", SDOConstants.SDO_DECIMAL);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
double db = 12;
BigDecimal bd = new BigDecimal(db);
myDO.setBigDecimal("myBigDecimal", bd);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyBigIntegerProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myBigIntegerDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myBigInteger");
myProp.set("type", SDOConstants.SDO_INTEGER);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
double db = 12;
BigInteger bi = new BigInteger(String.valueOf((int)db));
myDO.setBigInteger("myBigInteger", bi);
BigInteger mybigint = myDO.getBigInteger("myBigInteger");
assertFalse("Null was returned unexpectedly.", mybigint == null);
assertTrue("Expected BigInteger [" + bi + "], but was [" + mybigint + "]", mybigint == bi);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyBooleanProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myBooleanDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myBoolean");
myProp.set("type", SDOConstants.SDO_BOOLEAN);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
boolean b = Boolean.parseBoolean("true");
myDO.setBoolean("myBoolean", b);
boolean myboolean = myDO.getBoolean("myBoolean");
assertTrue("Expected Boolean [" + b + "], but was [" + myboolean + "]", myboolean == b);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyByteProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myByteDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myByte");
myProp.set("type", SDOConstants.SDO_BYTE);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
byte b = Byte.parseByte("8");
myDO.setByte("myByte", b);
byte mybyte = myDO.getByte("myByte");
assertTrue("Expected byte [" + b + "], but was [" + mybyte + "]", mybyte == b);
} catch (IllegalArgumentException iex) {
iex.printStackTrace();
fail("An IllegalArgumentException occurred.");
}
}
public void testMyBytesProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myBytesDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myBytes");
myProp.set("type", SDOConstants.SDO_BYTES);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
byte b1 = Byte.parseByte("16");
byte b2 = Byte.parseByte("8");
byte[] bytes = new byte[] {b1, b2};
myDO.setBytes("myBytes", bytes);
byte[] mybytes = myDO.getBytes("myBytes");
assertFalse("Null was returned unexpectedly.", mybytes == null);
assertTrue("Expected byte array [" + bytes + "], but was [" + mybytes + "]", mybytes == bytes);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyCharProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myCharDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myChar");
myProp.set("type", SDOConstants.SDO_CHARACTER);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
char c = 'x';
myDO.setChar("myCharDO", c);
char mychar = myDO.getChar("myCharDO");
assertTrue("Expected char [" + c + "], but was [" + mychar + "]", mychar == c);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyDateProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myDateDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myDate");
myProp.set("type", SDOConstants.SDO_DATE);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
Calendar controlCalendar = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
controlCalendar.clear();
controlCalendar.set(Calendar.YEAR, 2001);
controlCalendar.set(Calendar.MONTH, Calendar.MAY);
Date controlDate = controlCalendar.getTime();
myDO.setDate("myDateDO", controlDate);
Date mydate = myDO.getDate("myDateDO");
assertFalse("Null was returned unexpectedly.", mydate == null);
assertTrue("Expected Date [" + controlDate + "], but was [" + mydate + "]", mydate == controlDate);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyDoubleProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myDoubleDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myDouble");
myProp.set("type", SDOConstants.SDO_DOUBLE);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
double db = 12;
myDO.setDouble("myDouble", db);
double mydouble = myDO.getDouble("myDouble");
assertTrue("Expected double [" + db + "], but was [" + mydouble + "]", mydouble == db);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyFloatProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myFloatDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myFloat");
myProp.set("type", SDOConstants.SDO_FLOAT);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
float fl = 12;
myDO.setFloat("myFloat", fl);
float myfloat = myDO.getFloat("myFloat");
assertTrue("Expected float [" + fl + "], but was [" + myfloat + "]", myfloat == fl);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyIntProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myIntDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myInt");
myProp.set("type", SDOConstants.SDO_INT);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
int i = 69;
myDO.setInt("myInt", i);
int myint = myDO.getInt("myInt");
assertTrue("Expected int [" + i + "], but was [" + myint + "]", myint == i);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
} catch (Exception x) {
fail("An unexpected exception occurred: " + x.getMessage());
}
}
public void testMyLongProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myLongDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myLong");
myProp.set("type", SDOConstants.SDO_LONG);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
long l = 666L;
myDO.setLong("myLong", l);
long mylong = myDO.getLong("myLong");
assertTrue("Expected long [" + l + "], but was [" + mylong + "]", mylong == l);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyShortProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myShortDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myShort");
myProp.set("type", SDOConstants.SDO_SHORT);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
short s = Short.parseShort("66");
myDO.setShort("myShort", s);
short myshort = myDO.getShort("myShort");
assertTrue("Expected short [" + s + "], but was [" + myshort + "]", myshort == s);
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
public void testMyStringProperty() {
try {
DataObject myDO = dataFactory.create("commonj.sdo", "Type");
myDO.set("uri", "my.uri");
myDO.set("name", "myStringDO");
DataObject myProp = myDO.createDataObject("property");
myProp.set("name", "myString");
myProp.set("type", SDOConstants.SDO_STRING);
myProp.set("many", Boolean.valueOf("true"));
Type myDOType = typeHelper.define(myDO);
String s = new String("This is my string.");
myDO.setString("myString", s);
String mystring = myDO.getString("myString");
assertTrue("Expected string [" + s + "], but was [" + mystring + "]", mystring.equals(s));
} catch (IllegalArgumentException iex) {
fail("An IllegalArgumentException occurred.");
}
}
}