Appendix E. Hsqldb Test Utility

## Appendix E. Hsqldb Test Utility

$Date: 2004/12/24 23:40:59 $

The `org.hsqldb.test` package contains a number of tests for various functions of the database engine. Among these, the `TestSelf` class performs the tests that are based on scripts. To run the tests, you should compile the `hsqldbtest.jar` target with Ant.

For `TestSelf`, a batch file is provided in the testrun/hsqldb directory, together with a set of TestSelf*.txt files. To start the application in Windows, change to the directory and type:

        runtest TestSelf

In Unix / Linux, type:

        ./runTest.sh TestSelf

The new version of `TestSelf` runs multiple SQL test files to test different SQL operations of the database. All files in the working directory with names matching TestSelf*.txt are processed in alphabetical order.

You can add your own scripts to test different series of SQL queries. The format of the TestSelf*.txt file is simple text, with some indentation and prefixes in the form of Java-style comments. The prefixes indicate what the expected result should be.

- Comment lines must start with -- and are ignored

- Lines starting with spaces are the continuation of the previous line

- SQL statements with no prefix are simply executed.

- The remaining items in this list exemplify use of the available command line-prefixes.

-     /*c<rows>*/ SQL statement returning column count of <rows>

-     /*u<count>*/ SQL statement returning an update count equal to <count>

-     /*e*/ SQL statement that should produce an error when executing

-     /*r<string1>,<string2>*/ SQL statement returning a single row ResultSet equal to the specified value

-     /*r
          <string1>,<string2>
          <string1>,<string2>
          <string1>,<string2>
      */ SQL statement returning a multiple row ResultSet equal to the specified values

  (note that the result set lines are indented).

See the TestSelf*.txt files for actual examples.

Appendix D. Running Hsqldb with OpenOffice.org |  | Appendix F. Database Manager