net.sourceforge.sqlunit.handlers |
Handler implementations for SQLUnit. The SQLUnit package is designed as a set of individual XML handlers for the various elements of the SQLUnit test suite authoring XML. There is a one to one correspondence between the SQLUnit element and the SQLUnit handler class as illustrated in the table below:
XML Element |
SQLUnit Handler Class |
sqlunit
- connection
- setup
- test
- prepare
- sql or call
- result
- teardown
|
- net.sourceforge.sqlunit.ConnectionHandler
- net.sourceforge.sqlunit.SetupHandler
- net.sourceforge.sqlunit.SqlHandler
- net.sourceforge.sqlunit.IncludeHandler
- net.sourceforge.sqlunit.TestHandler
- net.sourceforge.sqlunit.PrepareHandler
- net.sourceforge.sqlunit.SqlHandler|CallHandler
- net.sourceforge.sqlunit.ResultHandler
- net.sourceforge.sqlunit.TeardownHandler
- net.sourceforge.sqlunit.SqlHandler
- net.sourceforge.sqlunit.IncludeHandler
|
Each handler class reads the JDOM element and extracts the information to pass back to the SQLUnit class. The SQLUnit class is designed as a JUnit test class. The JUnit class contains a single test method called testWrapper() which is responsible for reading the XML file and carrying out the operations specified in the setup element, followed by each test in sequence, followed by the operations in the teardown element. The ConnectionHandler class is called before all the other operations to get a JDBC connection to the database.
All handler classes implement the IHandler interface, which specifies a single process method which takes a JDOM Element org.jdom.Element and a java.sql.Connection object and returns a java.lang.Object. A given handler implementation may not need to return an Object, in which case it must return null. The HandlerFactory uses the handlers.properties Java properties file to instantiate the appropriate instance of a handler given the JDOM Element name.
Apart from the handlers, there are some auxilliary classes that provide utilities to the handlers. The SymbolTable class is a container of variables that are declared within an SQLUnit test script. The DatabaseResult object is a HashMap of fields and values returned from processing a SQL statement or stored procedure, or parsed out of a SQLUnit result element. The key for this HashMap is a DatabaseResultKey which is really a tuple of (resultsetId, rowId, colId) for each column returned by a SQL statement or stored procedure specified by the SQLUnit sql or call elements and parsed out of the SQLUnit result element. The SqlTypeUtils class is responsible for converting between database type to String and back, depending on the method called.
The SQLUnitException class is a common class that is shared by the SQLUnit package. The content of the SQLUnitException error messages is handled by specifying constant Strings in the IErrorCodes interface class.
|
Java Source File Name | Type | Comment |
ArgHandler.java | Class | The ArgHandler takes the JDOM Element representing the arg tag and
converts it to a Arg object. |
BatchCallHandler.java | Class | The BatchCallHandler class processes the contents of a batchcall tag in the
input XML file. |
BatchResultHandler.java | Class | The BatchResultHandler class processes the contents of a batchresult tag
in the input XML file. |
BatchSqlHandler.java | Class | The BatchSqlHandler class processes the contents of a batchsql tag in the
input XML file. |
BatchTestHandler.java | Class | The BatchTestHandler allows the grouping of a number of Stored Procedure
calls and/or SQL statements and a number of expected results from these.
The whole group is executed within a single transactional context, so a
failure in one of the SQL statements will roll back the entire test to
the point before it was called. |
CallHandler.java | Class | The CallHandler class processes the contents of a call tag in the input
XML file. |
CategoryHandler.java | Class | The CategoryHandler processes the contents of a Category tag in the
input SQLUnit XML file. |
ClassifiersHandler.java | Class | The ClassifiersHandler processes a JDOM Element representing the classifiers
element. |
ColHandler.java | Class | The ColHandler processes a JDOM Col element and returns a Col bean. |
ConnectionHandler.java | Class | The ConnectionHandler class creates a JDBC connection object given its
parameters in the form of a JDOM Element. |
ConstructorArgsHandler.java | Class | The ConstructorArgsHandler parses the JDOM Element constructorArgs and
processes it to return an array of Arg objects. |
DiffHandler.java | Class | The DiffHandler compares result sets from two different SQL statements
or stored procedure calls. |
DynamicSqlHandler.java | Class | The DynamicSqlHandler class processes the contents of an dynamicSql tag in
the input XML file. |
EchoHandler.java | Class | Writes an INFO trace to the log file. |
ExceptionHandler.java | Class | The Exception Handler parses a JDOM Element representing an exception
tag and returns an ExceptionBean object. |
FieldHandler.java | Class | Handles a field element, child of a struct element. |
ForeachHandler.java | Class | This class implements the handling of the foreach element. |
FuncDefHandler.java | Class | The FuncDefHandler processes a Function Definition JDOM Element. |
FuncHandler.java | Class | The FuncHandler looks up the named definition from the symbol table
and runs it after resolving the query, then returns a result. |
IncludeHandler.java | Class | The IncludeHandler reads and executes SQL statements specified in a
included file. |
JndiHandler.java | Class | The JndiHandler parses the JDOM Element methodArgs and processes
it to return an array of Arg objects. |
MatchHandler.java | Class | The ResultHandler class parses the XML representing the result object. |
MethodArgsHandler.java | Class | The MethodArgsHandler parses the JDOM Element methodArgs and processes
it to return an array of Arg objects. |
MethodInvokerHandler.java | Class | The MethodInvokerHandler class processes the contents of an methodInvoker
tag in the input XML file. |
OutParamHandler.java | Class | The OutParamHandler takes the JDOM Element representing the outparam tag
and converts it to a OutParam object. |
ParamHandler.java | Class | The ParamHandler takes the JDOM Element representing the param tag and
converts it to a Param object. |
ParamSetHandler.java | Class | The ParamSetHandler takes the JDOM Element representing the paramset
tag and converts it to an array of Param objects. |
PrepareHandler.java | Class | The PrepareHandler class takes care of setting up data within a test
block. |
ResultHandler.java | Class | The ResultHandler class parses the XML representing the result object. |
ResultSetHandler.java | Class | The ResultSetHandler processes a JDOM ResultSet element and returns a
ResultSet bean. |
RowHandler.java | Class | The RowHandler processes a JDOM Row element and returns a Row bean. |
SetHandler.java | Class | The SetHandler allows setting variables into the Symbol table. |
SetupHandler.java | Class | The SetupHandler class handles the setup tag of the XML input file. |
SeverityHandler.java | Class | The SeverityHandler processes the contents of the Severity tag in the
input XML file. |
SkipHandler.java | Class | The SkipHandler class processes the contents of a Skip tag in the
input SQLUnit XML file. |
SqlHandler.java | Class | The SqlHandler class processes the contents of an sql tag in the input
XML file. |
StructHandler.java | Class | Handles a struct element. |
SubDefHandler.java | Class | The SubDefHandler processes a JDOM Element representing a subroutine
definition. |
SubHandler.java | Class | The SubHandler is called from within the sub tag. |
SubParamHandler.java | Class | The SubParamHandler takes the JDOM Element representing a subparam tag and
converts it to a SubParam object. |
TeardownHandler.java | Class | The TeardownHandler class handles the instructions in the teardown tag
of the XML input file. |
TestHandler.java | Class | The TestHandler class is responsible for executing a single test specified
by the contents of the test tag in the input XML file. |
TypeDefHandler.java | Class | Handles a typedef element, child of a typemap element. |
TypeMapHandler.java | Class | Handles a typemap element, child of a typemap element. |