I am started evaluating this SQLUnit ti implement in my current project. I am facing issues when stored procedure call time but it's working fine with statements.
***************************************
<?xml version="1.0"?>
<!DOCTYPE sqlunit SYSTEM "file:docs/sqlunit.dtd">
I am started evaluating this SQLUnit ti implement in my current project. I am facing issues when stored procedure call time but it's working fine with statements.
***************************************
<?xml version="1.0"?>
<!DOCTYPE sqlunit SYSTEM "file:docs/sqlunit.dtd">
<sqlunit>
<connection connection-id="oltp">
<driver>oracle.jdbc.driver.OracleDriver</driver>
<url>jdbc:oracle:thin:@172.22.14.119:1521:oltp</url>
<user>oltpqf1</user>
<password>oltpqf1</password>
<jarfile-url>file:///D:/Oracle/product/10.1.0/Client_1/jdbc/lib/classes12.jar </jarfile-url>
</connection>
<test name="Find Hierarchy" failure-message="Failed to find Hierarchy">
<sql connection-id="oltp">
<stmt>select displayname from edx_hier_hierarchy where companyid=?</stmt>
<param id="1" type="VARCHAR">American HighTech1</param>
</sql>
<result>
<resultset id="1">
<row id="1">
<col id="1" type="VARCHAR">Billing Hierarchy</col>
</row>
</resultset>
</result>
</test>
<echo name="1" text="Done SQL call"/>
<test name="Hierarchy CleanUp" failure-message="Failed to run CleanUp Proc">
<call connection-id="oltp">
<stmt>{call mysqlunit_test(?)}</stmt>
<param id="1" name="p_test_key" type="VARCHAR" inout="out">${p_test_key}</param>
</call>
<result>
<outparam id="1" name="p_test_key" type="VARCHAR" >PSP</outparam>
</result>
</test>
<echo name="2" text="Done Proc call"/>
</sqlunit>
***************************************************
****************
stored procedure
****************
CREATE OR REPLACE PROCEDURE MySqlUnit_Test(P_Test_Key OUT VARCHAR) IS
BEGIN
P_Test_Key := 'PSP';
COMMIT;
END;
***********************************************
********************
Out put on console
********************
D:\sqlunit-5.0>ant -f myTest.xml myFirst
Buildfile: myTest.xml
def:
myFirst:
[sqlunit] *** Running SQLUnit file: mySQLUnitTest.xml
[sqlunit] Getting connection(oltp)
[sqlunit] Setting up test...
[sqlunit] Running test[1]: Find Hierarchy (241ms)
[sqlunit] Running echo[2]: 1
[sqlunit] echo: (Done SQL call) (241ms)
****************************************
the second test case is hangig not finishing.
This is the console out put when debug on time. These are last lines
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName({call mysqlunit_test(?)})
[sqlunit] DEBUG [main] (SymbolTable.java:301) - >> replaceVariables({call mysqlunit_test(?)})
[sqlunit] DEBUG [main] (HandlerFactory.java:58) - >> getInstance(param)
[sqlunit] DEBUG [main] (HandlerFactory.java:89) - >> getResourceBundle()
[sqlunit] DEBUG [main] (ParamHandler.java:102) - >> process(elParam)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,id)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(1)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,name)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(p_test_key)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,type)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(VARCHAR)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,scale)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(null)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,typename)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(null)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,is-null)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(false)
[sqlunit] DEBUG [main] (XMLUtils.java:63) - >> getAttributeValue(Element param,inout)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName(out)
[sqlunit] DEBUG [main] (XMLUtils.java:87) - >> getText(Element param)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName()
[sqlunit] DEBUG [main] (SqlHandler.java:137) - executeSQL(oltp,{call mysqlunit_test(?)},params)
[sqlunit] DEBUG [main] (ConnectionRegistry.java:64) - >> getConnection(oltp)
[sqlunit] DEBUG [main] (ConnectionRegistry.java:197) - >> isTransactionSupportImplicit(oltp)
[sqlunit] DEBUG [main] (SymbolTable.java:288) - >> isVariableName()
[sqlunit] DEBUG [main] (TypeMapper.java:96) - finding class by name: VARCHAR
[sqlunit] DEBUG [main] (TypeMap.java:58) - >> get(VARCHAR)
[sqlunit] DEBUG [main] (TypeMap.java:69) - Looking up value by oracle.VARCHAR
[sqlunit] DEBUG [main] (TypeMap.java:73) - Falling back on basic lookup by VARCHAR
[sqlunit] DEBUG [main] (TypeUtils.java:78) - >> getSqlTypeFromXmlType(VARCHAR)
[sqlunit] DEBUG [main] (TypeMapper.java:134) - finding id by name: VARCHAR
[sqlunit] DEBUG [main] (TypeMap.java:58) - >> get(VARCHAR)
[sqlunit] DEBUG [main] (TypeMap.java:69) - Looking up value by oracle.VARCHAR
[sqlunit] DEBUG [main] (TypeMap.java:73) - Falling back on basic lookup by VARCHAR
[sqlunit] DEBUG [main] (DatabaseResult.java:50) - [DatabaseResult]