41 lines
1.3 KiB
Plaintext
41 lines
1.3 KiB
Plaintext
|
|
/*
|
||
|
|
|
||
|
|
1 Advanced Tests
|
||
|
|
|
||
|
|
The Selftest provides only simple tests. Only queries are allowed within
|
||
|
|
an ~examples~ file, hence only objects within the stored database or
|
||
|
|
constant values can be used.
|
||
|
|
Secondo provides a more powerful test suite for testing an algebra modul, the
|
||
|
|
~TestRunner~. A TestRunner file consists of three parts: the ~setup~ part, followed by
|
||
|
|
the ~test~ part and the final ~teardown~ part. Within the setup part, a database can be
|
||
|
|
created, restored or just opened, new objects can be stored and so on.
|
||
|
|
If one of the commands in the setup part fails, the complete test fails.
|
||
|
|
In the testcase part, commands and their results are specified. Besides a concrete
|
||
|
|
result, the result can also indicate the success or failure of a command. Wheras the
|
||
|
|
success is required for let commands and similar, the failure case can be used to check
|
||
|
|
the system for wrong inputs, e.g. checking type mappings.
|
||
|
|
|
||
|
|
An example TestRunner file including descriptions of the file format is the
|
||
|
|
~example.test~ file located in Secondo's ~bin~ directory.
|
||
|
|
|
||
|
|
For using a ~TestRunner~ file, enter:
|
||
|
|
|
||
|
|
----
|
||
|
|
TestRunner -i <filename>
|
||
|
|
----
|
||
|
|
within Secondo's ~bin~ directory. As usual, if valgrind is part of your system, the
|
||
|
|
following commands can be used for finding memory errors and leaks:
|
||
|
|
|
||
|
|
----
|
||
|
|
TestRunner --valgrind -i <filename>
|
||
|
|
TestRunner --valgrindlc -i <filename>
|
||
|
|
----
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
*/
|
||
|
|
|
||
|
|
|
||
|
|
|