X-Git-Url: https://jxself.org/git/?p=super-star-trek.git;a=blobdiff_plain;f=doc%2FHACKING;h=cfc811e1e1c0ab15e7a506f9bb08111348aa0a0c;hp=32bccdcec4ec69cde1a0e0aaa9dea3c70b6397e2;hb=cd424d0d1d9dcca9adf104d8615896b9432da8b6;hpb=b039f9f202f3a7774e5daa92f8cd0ed9940045a8 diff --git a/doc/HACKING b/doc/HACKING index 32bccdc..cfc811e 100644 --- a/doc/HACKING +++ b/doc/HACKING @@ -210,27 +210,38 @@ and added more: the LRSCAN command is no longer needed. (Controlled by OPTION_AUTOSCAN and turned off if game type is "plain" or "almy".) +10. I imported Tom Almy's SCORE, CAPTURE, and CLOAK command from his +2013 version. + +11. I added color. + TESTING: This code has been designed to be tested. A simple shellscript included in the distribution, 'replay', automatically reruns the last game you played. -Here are some interesting seeds for debugging and regression testing -For each one, I list the seed, the options, and the last svn revision -for which it is known to have given the described behavior. +See the "test" directory for regression-test logs and checkfiles. +Please run 'make check' every time you change this game to be sure +you haven't broken anything. + +When you fix a bug, add the log of the game that triggered it (and +a checkfile) to the regression tests. This is how we improve the code +coverage of the suite. -1160647745 regular short good fancy (r769) +Two things to do to the log before dropping it in the test directory: -Starts you in a quadrant with the Super-Commander in it. Slamming three -torps at him will kill him. You can use this to regression-test both -torpedo tracks and the Deep Space Probe. Known bug: "probe aut 2 8" -triggers manual navigation. +(a) Strip out all lines beginning with "#curses:" - these are for debugging +the curses interface and are not needed or regression testing; removing +them makes it easier to see the game commands. -1160707235 regular short good fancy (r769) +(b) Add a header comment line explaining what the log is a test for. +It should begin with "# Tests". This is what gets echoed before each +regression test is run. -Do sr/mov aut 5 4/sr/sensors/orbit/transport; you'll get a transporter -failure. +Then drop it into the test directory and "make buildregress" to create +the check file. (Don't forget to commit and push the log and checkfile +to the repository.) NOTES ON THE PYTHON TRANSLATION: