##// END OF EJS Templates
repository: define manifest interfaces...
repository: define manifest interfaces The long march towards declaring interfaces for repository primitives continues. This commit essentially defines interfaces based on the following types: * manifest.manifestdict -> imanifestdict * manifest.manifestlog -> imanifestlog * manifest.memmanifestctx -> imanifestrevisionwritable * manifest.manifestctx -> imanifestrevisionstored * manifest.memtreemanifestctx -> imanifestrevisionwritable * manifest.treemanifestctx -> imanifestrevisionstored * util.dirs -> idirs The interfaces are thoroughly documented. Their documentation is now better than the documentation in manifest.py in many cases. With the exception of util.dirs, classes have been annotated with their interfaces. (I didn't feel like util.dirs needed the proper interface treatment.) Tests have been added demonstrating that all classes and instances conform to their interfaces. This work was much easier than filelogs. That's because Durham did an excellent job formalizing the manifest API a while back. There are still some minor kludges with the interfaces that should probably be addressed. But the primary goal with interface declarations is getting something established. Once we have an interface, we can modify it later easily enough. Differential Revision: https://phab.mercurial-scm.org/D3869

File last commit:

r34291:4f969b9e default
r38549:c82ea938 default
Show More
test-bookmarks-rebase.t
105 lines | 2.4 KiB | text/troff | Tads3Lexer
/ tests / test-bookmarks-rebase.t
Martin Geisler
tests: unify test-bookmarks-rebase
r11863 $ echo "[extensions]" >> $HGRCPATH
$ echo "rebase=" >> $HGRCPATH
initialize repository
$ hg init
$ echo 'a' > a
$ hg ci -A -m "0"
adding a
$ echo 'b' > b
$ hg ci -A -m "1"
adding b
$ hg up 0
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ echo 'c' > c
$ hg ci -A -m "2"
adding c
created new head
$ echo 'd' > d
$ hg ci -A -m "3"
adding d
$ hg bookmark -r 1 one
$ hg bookmark -r 3 two
Sean Farley
bookmarks: fix bug that activated a bookmark even with -r passed...
r19112 $ hg up -q two
Martin Geisler
tests: unify test-bookmarks-rebase
r11863
bookmark list
$ hg bookmark
David Soria Parra
localrepo: sort hg bookmark output...
r13388 one 1:925d80f479bb
Martin Geisler
tests: unify test-bookmarks-rebase
r11863 * two 3:2ae46b1d99a7
rebase
Nicolas Dumazet
tests: use regular expressions instead of helpers
r11907 $ hg rebase -s two -d one
Martin von Zweigbergk
rebase: also include other namespaces in changeset description...
r34291 rebasing 3:2ae46b1d99a7 "3" (two tip)
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 saved backup bundle to $TESTTMP/.hg/strip-backup/2ae46b1d99a7-e6b057bc-rebase.hg
Martin Geisler
tests: unify test-bookmarks-rebase
r11863
$ hg log
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 changeset: 3:42e5ed2cdcf4
David Soria Parra
templater: add bookmarks to templates and default output...
r13386 bookmark: two
Martin Geisler
tests: unify test-bookmarks-rebase
r11863 tag: tip
parent: 1:925d80f479bb
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 3
changeset: 2:db815d6d32e6
parent: 0:f7b1eb17ad24
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 2
changeset: 1:925d80f479bb
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 bookmark: one
Martin Geisler
tests: unify test-bookmarks-rebase
r11863 user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 1
changeset: 0:f7b1eb17ad24
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 0
Tony Tung
rebase: restore bookmark state on abort...
r24758 aborted rebase should restore active bookmark.
$ hg up 1
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
(leaving bookmark two)
$ echo 'e' > d
$ hg ci -A -m "4"
adding d
created new head
$ hg bookmark three
$ hg rebase -s three -d two
Martin von Zweigbergk
rebase: also include other namespaces in changeset description...
r34291 rebasing 4:dd7c838e8362 "4" (three tip)
Tony Tung
rebase: restore bookmark state on abort...
r24758 merging d
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging d! (edit, then use 'hg resolve --mark')
Tony Tung
rebase: restore bookmark state on abort...
r24758 unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
$ hg rebase --abort
rebase aborted
$ hg bookmark
one 1:925d80f479bb
* three 4:dd7c838e8362
two 3:42e5ed2cdcf4
Tony Tung
rebase: check that the bookmark is still valid when restoring (issue4669)...
r25101 after aborted rebase, restoring a bookmark that has been removed should not fail
$ hg rebase -s three -d two
Martin von Zweigbergk
rebase: also include other namespaces in changeset description...
r34291 rebasing 4:dd7c838e8362 "4" (three tip)
Tony Tung
rebase: check that the bookmark is still valid when restoring (issue4669)...
r25101 merging d
Siddharth Agarwal
simplemerge: move conflict warning message to filemerge...
r26614 warning: conflicts while merging d! (edit, then use 'hg resolve --mark')
Tony Tung
rebase: check that the bookmark is still valid when restoring (issue4669)...
r25101 unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
$ hg bookmark -d three
$ hg rebase --abort
rebase aborted
$ hg bookmark
one 1:925d80f479bb
two 3:42e5ed2cdcf4