diff options
Diffstat (limited to 'sandbox/jboynes/sdoproxy/src/test/java/org/apache/tuscany/sdo/proxy/DataTypesTestCase.java')
-rw-r--r-- | sandbox/jboynes/sdoproxy/src/test/java/org/apache/tuscany/sdo/proxy/DataTypesTestCase.java | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/sandbox/jboynes/sdoproxy/src/test/java/org/apache/tuscany/sdo/proxy/DataTypesTestCase.java b/sandbox/jboynes/sdoproxy/src/test/java/org/apache/tuscany/sdo/proxy/DataTypesTestCase.java new file mode 100644 index 0000000000..d097b22f17 --- /dev/null +++ b/sandbox/jboynes/sdoproxy/src/test/java/org/apache/tuscany/sdo/proxy/DataTypesTestCase.java @@ -0,0 +1,130 @@ +/** + * + * Copyright 2005 BEA Systems Inc. + * Copyright 2005 International Business Machines Corporation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.tuscany.sdo.proxy; + +import java.util.Arrays; +import java.util.Date; + +import junit.framework.TestCase; +import org.osoa.sdo.Type; +import org.osoa.sdo.Property; +import org.osoa.sdo.DataObject; +import org.osoa.sdo.helper.TypeHelper; + +import org.apache.tuscany.sdo.impl.TypeHelperImpl; +import org.apache.tuscany.sdo.proxy.interfaces.DataTypes; + +/** + * @version $Rev$ $Date$ + */ +@SuppressWarnings({"CastToIncompatibleInterface"}) +public class DataTypesTestCase extends TestCase { + private DataTypes dataTypes; + private Type<DataTypes> type; + + public void testString() { + dataTypes.setString("Hello World"); + assertEquals("Hello World", dataTypes.getString()); + } + + public void testBytes() { + byte[] bytes = new byte[]{0, 1, 2, 3}; + dataTypes.setBytes(bytes ); + assertTrue(Arrays.equals(bytes, dataTypes.getBytes())); + } + + public void testDate() { + Date date = new Date(); + dataTypes.setDate(date); + assertEquals(date, dataTypes.getDate()); + } + + public void testGetIndex() { + DataObject o = (DataObject) dataTypes; + int i = 0; + for (Property<?> property : type.getProperties()) { + String name = property.getName(); + if ("string".equals(name)) { + dataTypes.setString("Hello World"); + assertEquals("Hello World", o.get(i)); + } else if ("bytes".equals(name)) { + byte[] bytes = new byte[]{0, 1, 2, 3}; + dataTypes.setBytes(bytes ); + assertTrue(Arrays.equals(bytes, (byte[]) o.get(i))); + } else if ("date".equals(name)) { + Date date = new Date(); + dataTypes.setDate(date); + assertEquals(date, o.get(i)); + } else { + fail(); + } + i++; + } + } + + public void testSetIndex() { + DataObject o = (DataObject) dataTypes; + int i = 0; + for (Property<?> property : type.getProperties()) { + String name = property.getName(); + if ("string".equals(name)) { + o.set(i, "Hello World"); + assertEquals("Hello World", dataTypes.getString()); + } else if ("bytes".equals(name)) { + byte[] bytes = new byte[]{0, 1, 2, 3}; + o.set(i, bytes); + assertTrue(Arrays.equals(bytes, dataTypes.getBytes())); + } else if ("date".equals(name)) { + Date date = new Date(); + o.set(i, date); + assertEquals(date, dataTypes.getDate()); + } else { + fail(); + } + i++; + } + } + + public void testSetNull() { + DataObject o = (DataObject) dataTypes; + int i = 0; + for (Property<?> property : type.getProperties()) { + String name = property.getName(); + if ("string".equals(name)) { + o.set(i, null); + assertNull(dataTypes.getString()); + } else if ("bytes".equals(name)) { + o.set(i, null); + assertNull(dataTypes.getBytes()); + } else if ("date".equals(name)) { + o.set(i, null); + assertNull(dataTypes.getDate()); + } else { + fail(); + } + i++; + } + } + + protected void setUp() throws Exception { + super.setUp(); + TypeHelper typeHelper = new TypeHelperImpl(getClass().getClassLoader()); + type = typeHelper.define(DataTypes.class); + dataTypes = type.newInstance(); + } +} |