diff options
author | Daniel Silverstone <daniel.silverstone@codethink.co.uk> | 2012-09-27 14:30:31 +0100 |
---|---|---|
committer | Daniel Silverstone <daniel.silverstone@codethink.co.uk> | 2012-09-27 14:30:31 +0100 |
commit | 4b0aa73b8c69bd5b7521337809f7bc4714209a5a (patch) | |
tree | 75f4c36771caf222280249cd1ed611d5ade8bd48 /tests/test-filelog | |
parent | 59a96880b5d035db83067acda8345497c75d7716 (diff) | |
parent | 921ced43c48c1d170452a7b251b94cc96ec8dd44 (diff) | |
download | mercurial-tarball-4b0aa73b8c69bd5b7521337809f7bc4714209a5a.tar.gz |
Merge remote-tracking branch 'origin/master' into baserock/morphbaserock/morph
This changes us to 1.9.3 which might stand a better chance of being
usable by Lorry.
We also undo the setup.py change because python now supports bz2
Diffstat (limited to 'tests/test-filelog')
-rwxr-xr-x | tests/test-filelog | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/test-filelog b/tests/test-filelog new file mode 100755 index 0000000..923fe29 --- /dev/null +++ b/tests/test-filelog @@ -0,0 +1,50 @@ +#!/usr/bin/env python +""" +Tests the behaviour of filelog w.r.t. data starting with '\1\n' +""" +from mercurial import ui, hg +from mercurial.node import nullid, hex + +myui = ui.ui() +repo = hg.repository(myui, path='.', create=True) + +fl = repo.file('foobar') + +def addrev(text, renamed=False): + if renamed: + # data doesnt matter. Just make sure filelog.renamed() returns True + meta = dict(copyrev=hex(nullid), copy='bar') + else: + meta = {} + + t = repo.transaction('commit') + try: + node = fl.add(text, meta, t, 0, nullid, nullid) + return node + finally: + t.close() + +def error(text): + print 'ERROR: ' + text + +textwith = '\1\nfoo' +without = 'foo' + +node = addrev(textwith) +if not textwith == fl.read(node): + error('filelog.read for data starting with \\1\\n') +if fl.cmp(node, textwith) or not fl.cmp(node, without): + error('filelog.cmp for data starting with \\1\\n') +if fl.size(0) != len(textwith): + error('FIXME: This is a known failure of filelog.size for data starting ' + 'with \\1\\n') + +node = addrev(textwith, renamed=True) +if not textwith == fl.read(node): + error('filelog.read for a renaming + data starting with \\1\\n') +if fl.cmp(node, textwith) or not fl.cmp(node, without): + error('filelog.cmp for a renaming + data starting with \\1\\n') +if fl.size(1) != len(textwith): + error('filelog.size for a renaming + data starting with \\1\\n') + +print 'OK.' |