Mercurial > hg
view tests/test-filelog @ 11992:ccd8e592c3c5 stable
win32: remove useless lstat() fallback in nlinks()
The fallback was introduced by 3b4f05ff3130 at the same time than
nlinks(). Apparently it only handles the case where target path
does not exist. Just raise IOError directly.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Thu, 19 Aug 2010 22:51:09 +0200 |
parents | 2370e270a29a |
children | 2de1244361aa |
line wrap: on
line source
#!/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.'