Mercurial > hg
view tests/test-revlog-ancestry.py @ 37379:24c7428983c5
tests: disable infinitepush tests for simple store
Infinitepush relies heavily on bundles and bundlerepo. As such,
it won't be easy to make compatible with alternate storage
backends at this time.
Let's disable the tests when running with our simple store.
Differential Revision: https://phab.mercurial-scm.org/D3062
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 03 Apr 2018 14:11:43 -0700 |
parents | 5a029f049854 |
children | b14fdf1fb615 |
line wrap: on
line source
from __future__ import absolute_import, print_function import os from mercurial import ( hg, merge, ui as uimod, ) u = uimod.ui.load() repo = hg.repository(u, b'test1', create=1) os.chdir('test1') def commit(text, time): repo.commit(text=text, date=b"%d 0" % time) def addcommit(name, time): f = open(name, 'wb') f.write(b'%s\n' % name) f.close() repo[None].add([name]) commit(name, time) def update(rev): merge.update(repo, rev, False, True) def merge_(rev): merge.update(repo, rev, True, False) if __name__ == '__main__': addcommit(b"A", 0) addcommit(b"B", 1) update(0) addcommit(b"C", 2) merge_(1) commit(b"D", 3) update(2) addcommit(b"E", 4) addcommit(b"F", 5) update(3) addcommit(b"G", 6) merge_(5) commit(b"H", 7) update(5) addcommit(b"I", 8) # Ancestors print('Ancestors of 5') for r in repo.changelog.ancestors([5]): print(r, end=' ') print('\nAncestors of 6 and 5') for r in repo.changelog.ancestors([6, 5]): print(r, end=' ') print('\nAncestors of 5 and 4') for r in repo.changelog.ancestors([5, 4]): print(r, end=' ') print('\nAncestors of 7, stop at 6') for r in repo.changelog.ancestors([7], 6): print(r, end=' ') print('\nAncestors of 7, including revs') for r in repo.changelog.ancestors([7], inclusive=True): print(r, end=' ') print('\nAncestors of 7, 5 and 3, including revs') for r in repo.changelog.ancestors([7, 5, 3], inclusive=True): print(r, end=' ') # Descendants print('\n\nDescendants of 5') for r in repo.changelog.descendants([5]): print(r, end=' ') print('\nDescendants of 5 and 3') for r in repo.changelog.descendants([5, 3]): print(r, end=' ') print('\nDescendants of 5 and 4') print(*repo.changelog.descendants([5, 4]), sep=' ')