blob: d415988213d983e3fc377bf9da8b4fad7d4a7860 [file] [log] [blame]
Remove this file prior to submission??
------------------------------------
Changes by Matt Helsley <matthltc@us.ibm.com>, March 12th, 2008:
Many (but not all) of these changes are scripted so that I can modify the tests
quickly by editting the ltp-convert.sh script. It saves a copy of the test foo
as foo.orig before making any modifications. Currently there's a patch.txt file
which shows all the changes the script makes.
Moved readme.README to README
Made tests run in the sandbox directory rather than in testcases/working
Moved scripts and executables from testcases/working to bin
Based all non-local paths out of the "$FS_BIND_ROOT" directory rather than
having a "$path" variable.
Logged mount lists before and after each test, took a diff, and removed the list
if they look the same. Otherwise it keeps the two files, reports the
diff, cleans up the mounts with a big hammer, and goes onto the next
test.
Logged the sandbox contents before and after, took a diff, and removed the
logged contents if they look the same. Otherwise it keeps the
lists of files and dirs, reports the problem, and cleans up the
sandbox. This happens after the mount cleanups otherwise it could fail.
Factored out the "check" function from most tests (still need to work on "childXX" and "parentXX" scripts) and put it into the setup script.
Factored out the "path" variable and pushd bits into the sharedSubtree script.
Added some traps to the test scripts to detect unexpected errors and log them
Switched to LTP infrastructure for the test scripts. The driver scripts however
are not switched yet (easy to do). I did this by writing some LTP API shims
rather than try to toss it into ltp-full-XXXXXX.tgz. Then, once everything
uses LTP we can integrate it.
Made mkdir logdir quiet (restore it??)
Count total tests in a separate loop so we can detect accidentally skipped tests
"test" is a program -- changed variables named "test" to "t" to avoid potential
confusion later
Added quotes around paths, variables, and output that may someday contain
spaces (hopefully never, but..)
Added logdir/errors redirection of stderr
Removed testcases/<Up> script
Removed .c files in testcases/cloneNS which appeared to be unused
Added Makefiles for .c files and for toplevel dir (for LTP integration)
Converted "mmount" to "smount" to match the .c file.
Fixed up nsclone.c and smount.c to compile and do so without warnings.
(at least on gcc 4.2.3-1 debian)
Fixed some bugs in the testcases:
A couple copy-paste bugs
Bugs with uncloneable mounts being bound but the error wasn't expected.
A few path bugs.
Added bits to handle commands that are expected to fail (return non-zero)
Fixup the return code so that these are trapped properly
expected_to_fail && /bin/false || /bin/true
Redirected output
mount_expected_to_fail 2> /dev/null || result=$?
Added umounts and comments describing cleanup bits which cleanup in case of
unexpected mount --move failure for example
Added a BUGS file
Added a CHANGELOG
Added TODO file(s)
Moved the sharedSubtree test to LTPROOT/testscripts and rewrote it for LTP