BTW great idea for a project, and mostly great implementation :).
I've noticed a couple bugs that are kind of related to #5.
First of all, old files in actual should probably be deleted every time the test driver is run. If I have a working program, pass all the tests, then change something that stops my program from creating output files, the test driver will still tell me I passed everything, since the actual folder still has correct files from the previous run.
After encountering the first problem, I manually deleted all the files in the actual folder, then ran the test driver. It tells me I passed everything, despite creating no actual output files. [I'm guessing diff doesn't report any differences if it doesn't find one of the files] Here's the output:
Compiling project...
lab-1 test results:
diff: lab-1/actual/10: No such file or directory
Test 10......PASSED
diff: lab-1/actual/11: No such file or directory
Test 11......PASSED
diff: lab-1/actual/12: No such file or directory
Test 12......PASSED
diff: lab-1/actual/13: No such file or directory
Test 13......PASSED
diff: lab-1/actual/14: No such file or directory
Test 14......PASSED
diff: lab-1/actual/15: No such file or directory
Test 15......PASSED
diff: lab-1/actual/61: No such file or directory
Test 61......PASSED
diff: lab-1/actual/62: No such file or directory
Test 62......PASSED
pmccabe......PASSED
If you could check that output files exist and delete them before each run, it'd be awesome.