# HG changeset patch # User timeless # Date 2016-03-08 20:52:57 # Node ID 0767c2f624c633dfea28f891671cb4a19019d9cf # Parent 1d9d29d4813a1135675b263bd551e2a9d2fca953 tests: divorce blackbox test from test-dispatch.py I used test-dispatch.py to demonstrate what would happen if a log file changed from being readonly to writable, by having it replace a directory (proxy for readonly/not-writable) with a log file in between transactions of a running python process (proxy for Mercurial). This commit makes it easier for people to follow what the test is doing, by creating a real file that people can read. diff --git a/tests/test-dispatch.py b/tests/blackbox-readonly-dispatch.py copy from tests/test-dispatch.py copy to tests/blackbox-readonly-dispatch.py --- a/tests/test-dispatch.py +++ b/tests/blackbox-readonly-dispatch.py @@ -14,9 +14,6 @@ def testdispatch(cmd): result = dispatch.dispatch(req) print("result: %r" % (result,)) -testdispatch("init test1") -os.chdir('test1') - # create file 'foo', add and commit f = open('foo', 'wb') f.write('foo\n') @@ -28,6 +25,10 @@ testdispatch("commit -m commit1 -d 2000- f = open('foo', 'ab') f.write('bar\n') f.close() +# remove blackbox.log directory (proxy for readonly log file) +os.rmdir(".hg/blackbox.log") +# replace it with the real blackbox.log file +os.rename(".hg/blackbox.log-", ".hg/blackbox.log") testdispatch("commit -m commit2 -d 2000-01-02 foo") # check 88803a69b24 (fancyopts modified command table) diff --git a/tests/test-blackbox.t b/tests/test-blackbox.t --- a/tests/test-blackbox.t +++ b/tests/test-blackbox.t @@ -157,7 +157,7 @@ log rotation $ sed -e 's/\(.*test1.*\)/#\1/; s#\(.*commit2.*\)#os.rmdir(".hg/blackbox.log")\ > os.rename(".hg/blackbox.log-", ".hg/blackbox.log")\ > \1#' $TESTDIR/test-dispatch.py > ../test-dispatch.py - $ python ../test-dispatch.py + $ python $TESTDIR/blackbox-readonly-dispatch.py running: add foo result: 0 running: commit -m commit1 -d 2000-01-01 foo