Added test cases for Object typed parameter.
diff --git a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/plugin.xml b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/plugin.xml
index 13dba0c..de44331 100644
--- a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/plugin.xml
+++ b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/plugin.xml
@@ -50,6 +50,11 @@
nativeDataType="BOOLEAN"
nativeDataTypeCode="16"
odaScalarDataType="Boolean"/>
+ <dataTypeMapping
+ nativeDataType="JAVAOBJECT"
+ nativeDataTypeCode="2000"
+ odaScalarDataType="JavaObject">
+ </dataTypeMapping>
</dataSet>
</extension>
diff --git a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestAdvQueryImpl.java b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestAdvQueryImpl.java
index 6de9952..3b83f39 100644
--- a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestAdvQueryImpl.java
+++ b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestAdvQueryImpl.java
@@ -584,8 +584,9 @@
*/
public Object getObject( int parameterId ) throws OdaException
{
- // TODO Auto-generated method stub
- return null;
+ checkOutputParameterIndex( parameterId );
+ m_wasNull = false;
+ return TestData.createObjectData();
}
/* (non-Javadoc)
@@ -593,8 +594,8 @@
*/
public Object getObject( String parameterName ) throws OdaException
{
- // TODO Auto-generated method stub
- return null;
+ int index = getOutputParamIndex( parameterName );
+ return getObject( index );
}
/* (non-Javadoc)
diff --git a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestData.java b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestData.java
index b12a7bf..b09853d 100644
--- a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestData.java
+++ b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestData.java
@@ -113,6 +113,11 @@
public static final Object createObjectData()
{
+ return TestData.class;
+ }
+
+ public static final Object createObjectDataWithString()
+ {
return new String( "testObject" ); //$NON-NLS-1$
}
diff --git a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestParamMetaDataImpl.java b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestParamMetaDataImpl.java
index 1a0befe..0ec6001 100644
--- a/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestParamMetaDataImpl.java
+++ b/tests/org.eclipse.datatools.connectivity.oda.consumer.testdriver/src/org/eclipse/datatools/connectivity/oda/consumer/testdriver/TestParamMetaDataImpl.java
@@ -102,6 +102,8 @@
IParameterMetaData.parameterModeOut, IParameterMetaData.parameterNullableUnknown ) );
m_params.add( new TestParameterMetaData( "BooleanParamOut", Types.BOOLEAN, "BOOLEAN", -1, -1,
IParameterMetaData.parameterModeOut, IParameterMetaData.parameterNullableUnknown ) );
+ m_params.add( new TestParameterMetaData( "ObjectParamOut", Types.JAVA_OBJECT, "OBJECT", -1, -1,
+ IParameterMetaData.parameterModeOut, IParameterMetaData.parameterNullableUnknown ) );
}
}
diff --git a/tests/org.eclipse.datatools.connectivity.oda.consumer.tests/src/org/eclipse/datatools/connectivity/oda/consumer/tests/AdvQueryTest.java b/tests/org.eclipse.datatools.connectivity.oda.consumer.tests/src/org/eclipse/datatools/connectivity/oda/consumer/tests/AdvQueryTest.java
index 0a44668..46ae0d8 100644
--- a/tests/org.eclipse.datatools.connectivity.oda.consumer.tests/src/org/eclipse/datatools/connectivity/oda/consumer/tests/AdvQueryTest.java
+++ b/tests/org.eclipse.datatools.connectivity.oda.consumer.tests/src/org/eclipse/datatools/connectivity/oda/consumer/tests/AdvQueryTest.java
@@ -645,6 +645,26 @@
{
checkGetParamValueBeforeExecutedError( e, isExecuted );
}
+
+ try
+ {
+ Object val = byPos ?
+ m_query.getObject( outParamStartIndex + 13 ) :
+ m_query.getObject( "ObjectParamOut" );
+
+ if ( isExecuted )
+ {
+ Object refVal = TestData.createObjectData();
+ assertEquals( val, refVal );
+ assertFalse( m_query.wasNull() );
+ }
+ else
+ fail(); // should not get here.
+ }
+ catch( OdaException e )
+ {
+ checkGetParamValueBeforeExecutedError( e, isExecuted );
+ }
}
private void checkGetParamValueBeforeExecutedError( OdaException e, boolean isExecuted )