Commit da2341b4 authored by Chris Withers's avatar Chris Withers

Make it possible to run this test from a buildout environment.

parent 104d6dc4
...@@ -19,6 +19,16 @@ This is a by-hand test. It succeeds iff it doesn't blow up. Run it with ...@@ -19,6 +19,16 @@ This is a by-hand test. It succeeds iff it doesn't blow up. Run it with
its home directory as the current directory. It will destroy all files its home directory as the current directory. It will destroy all files
matching Data.* and Copy.* in this directory, and anything in a matching Data.* and Copy.* in this directory, and anything in a
subdirectory of name 'backup'. subdirectory of name 'backup'.
Usage:
python testrepozo.py [repozo_script]
repozo_script, if provided, is a path to a script that runs repozo,
such as that generated by buildout.
eg:
$ ../../../../bin/py testrepozo.py ../../../../bin/repozo
""" """
import os import os
...@@ -32,8 +42,6 @@ import ZODB ...@@ -32,8 +42,6 @@ import ZODB
from ZODB import FileStorage from ZODB import FileStorage
import transaction import transaction
PYTHON = sys.executable + ' '
def cleanup(): def cleanup():
for fname in glob.glob('Data.*') + glob.glob('Copy.*'): for fname in glob.glob('Data.*') + glob.glob('Copy.*'):
os.remove(fname) os.remove(fname)
...@@ -76,7 +84,7 @@ def check(correctpath='Data.fs', when=None): ...@@ -76,7 +84,7 @@ def check(correctpath='Data.fs', when=None):
extra = '' extra = ''
else: else:
extra = ' -D ' + when extra = ' -D ' + when
cmd = PYTHON + '../repozo.py -vRr backup -o Copy.fs' + extra cmd = PYTHON + REPOZO + ' -vRr backup -o Copy.fs' + extra
os.system(cmd) os.system(cmd)
f = file(correctpath, 'rb') f = file(correctpath, 'rb')
g = file('Copy.fs', 'rb') g = file('Copy.fs', 'rb')
...@@ -122,9 +130,9 @@ def main(): ...@@ -122,9 +130,9 @@ def main():
# Make an incremental backup, half the time with gzip (-z). # Make an incremental backup, half the time with gzip (-z).
if random.random() < 0.5: if random.random() < 0.5:
os.system(PYTHON + '../repozo.py -vBQr backup -f Data.fs') os.system(PYTHON + REPOZO + ' -vBQr backup -f Data.fs')
else: else:
os.system(PYTHON + '../repozo.py -zvBQr backup -f Data.fs') os.system(PYTHON + REPOZO + ' -zvBQr backup -f Data.fs')
if i % 9 == 0: if i % 9 == 0:
copytime = '%04d-%02d-%02d-%02d-%02d-%02d' % (time.gmtime()[:6]) copytime = '%04d-%02d-%02d-%02d-%02d-%02d' % (time.gmtime()[:6])
...@@ -148,4 +156,9 @@ def main(): ...@@ -148,4 +156,9 @@ def main():
print 'Test passed!' print 'Test passed!'
if __name__ == '__main__': if __name__ == '__main__':
PYTHON = sys.executable + ' '
if len(sys.argv)>1:
REPOZO = sys.argv[1]
else:
REPOZO = '../repozo.py'
main() main()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment