##// END OF EJS Templates
tests: remove 'hghave symlink' from test-import-git.t...
tests: remove 'hghave symlink' from test-import-git.t The test had a long chain of commits depending on execbits in some of first commits. The hashes are checked throughout the file, so there was no elegant way to make it pass both with and without execbits. We now rollback the execbits-or-not commits and make a stable change instead. The hash chain is thus updated once but is now a bit more stable. The test coverage should be unaltered.

File last commit:

r16868:eb88ed42 default
r16910:ad229181 default
Show More
test-revlog-ancestry.py
77 lines | 1.5 KiB | text/x-python | PythonLexer
/ tests / test-revlog-ancestry.py
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 import os
from mercurial import hg, ui, merge
u = ui.ui()
repo = hg.repository(u, 'test1', create=1)
os.chdir('test1')
def commit(text, time):
repo.commit(text=text, date="%d 0" % time)
def addcommit(name, time):
Alejandro Santos
compat: use open() instead of file() everywhere
r9031 f = open(name, 'w')
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 f.write('%s\n' % name)
f.close()
Dirkjan Ochtman
move working dir/dirstate methods from localrepo to workingctx
r11303 repo[None].add([name])
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 commit(name, time)
def update(rev):
merge.update(repo, rev, False, True, False)
def merge_(rev):
merge.update(repo, rev, True, False, False)
if __name__ == '__main__':
addcommit("A", 0)
addcommit("B", 1)
update(0)
addcommit("C", 2)
merge_(1)
commit("D", 3)
update(2)
addcommit("E", 4)
addcommit("F", 5)
update(3)
addcommit("G", 6)
merge_(5)
commit("H", 7)
update(5)
addcommit("I", 8)
# Ancestors
print 'Ancestors of 5'
Bryan O'Sullivan
revlog: ancestors(*revs) becomes ancestors(revs) (API)...
r16866 for r in repo.changelog.ancestors([5]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nAncestors of 6 and 5'
Bryan O'Sullivan
revlog: ancestors(*revs) becomes ancestors(revs) (API)...
r16866 for r in repo.changelog.ancestors([6, 5]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nAncestors of 5 and 4'
Bryan O'Sullivan
revlog: ancestors(*revs) becomes ancestors(revs) (API)...
r16866 for r in repo.changelog.ancestors([5, 4]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
Joshua Redstone
revlog: add optional stoprev arg to revlog.ancestors()...
r16868 print '\nAncestors of 7, stop at 6'
for r in repo.changelog.ancestors([7], 6):
print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872 # Descendants
print '\n\nDescendants of 5'
Bryan O'Sullivan
revlog: descendants(*revs) becomes descendants(revs) (API)...
r16867 for r in repo.changelog.descendants([5]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nDescendants of 5 and 3'
Bryan O'Sullivan
revlog: descendants(*revs) becomes descendants(revs) (API)...
r16867 for r in repo.changelog.descendants([5, 3]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872
print '\nDescendants of 5 and 4'
Bryan O'Sullivan
revlog: descendants(*revs) becomes descendants(revs) (API)...
r16867 for r in repo.changelog.descendants([5, 4]):
Dirkjan Ochtman
strip trailing whitespace, replace tabs by spaces
r6923 print r,
Stefano Tortarolo
Add ancestors and descendants to revlog...
r6872