"Sander Striker" <[EMAIL PROTECTED]> writes: > Why don't you take a look at the test framework that was cooked up > in subversion? > > http://svn.collab.net/repos/svn/trunk/subversion/tests/ > > It is currently only used for subversion, but I think you will be able > to leverage that code with little effort. Also, on the plus side, it > is APR based [back to eating our own dogfood ;]
How is it APR based? I don't follow you, Sander. It seems that one could test anything at all with our system. For testing library interfaces, we have a simple C framework that runs standalone, self-verifying tests. For example: $ ./skel-test list skel-test 1: parse implicit-length atoms skel-test 2: parse explicit-length atoms skel-test 3: parse invalid atoms skel-test 4: parse lists skel-test 5: unparse implicit-length atoms skel-test 6: unparse lists $ ./skel-test PASS: skel-test 1: parse implicit-length atoms PASS: skel-test 2: parse explicit-length atoms PASS: skel-test 3: parse invalid atoms PASS: skel-test 4: parse lists PASS: skel-test 5: unparse implicit-length atoms PASS: skel-test 6: unparse lists For testing the svn binary as a black-box user application, we have a similar framework written in python: $ ./basic_tests.py list Test # Test Description ------ ---------------- 1 basic checkout of a wc 2 basic status command 3 basic commit command 4 basic update command 5 basic corruption detection 6 receiving text merges as part of an update 7 basic conflict creation and resolution 8 basic cleanup command 9 basic revert command 10 basic switch command 11 basic delete command $ ./basic_tests.py PASS: basic_tests.py 1: basic checkout of a wc PASS: basic_tests.py 2: basic status command PASS: basic_tests.py 3: basic commit command PASS: basic_tests.py 4: basic update command ...