Mercurial > hg
comparison tests/test-resolve.t @ 23022:ace380a0619b
test-resolve: add more tests for in conflict-free states
We already have a test for 'hg resolve -m' when there is no merge in
progress. Add one for 'hg resolve --all' as well.
Also add tests for both --all and -m when there is a merge without
conflicts in progress. They should both be successful, just as if
there had been conflicts that had been marked resolved. However, that
is currently broken, so mark the tests broken for now. The behavior
will be fixed in a later patch.
author | Martin von Zweigbergk <martinvonz@gmail.com> |
---|---|
date | Wed, 08 Oct 2014 22:19:08 -0700 |
parents | 41770cee3c6a |
children | 63c9088bebad |
comparison
equal
deleted
inserted
replaced
23021:41770cee3c6a | 23022:ace380a0619b |
---|---|
11 | 11 |
12 $ echo bar >> file1 | 12 $ echo bar >> file1 |
13 $ echo bar >> file2 | 13 $ echo bar >> file2 |
14 $ hg commit -Am 'append bar to files' | 14 $ hg commit -Am 'append bar to files' |
15 | 15 |
16 create a second head | 16 create a second head with conflicting edits |
17 | 17 |
18 $ hg up -C 0 | 18 $ hg up -C 0 |
19 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | 19 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
20 $ echo baz >> file1 | 20 $ echo baz >> file1 |
21 $ echo baz >> file2 | 21 $ echo baz >> file2 |
22 $ hg commit -Am 'append baz to files' | 22 $ hg commit -Am 'append baz to files' |
23 created new head | 23 created new head |
24 | 24 |
25 create a third head with no conflicting edits | |
26 $ hg up -qC 0 | |
27 $ echo foo > file3 | |
28 $ hg commit -Am 'add non-conflicting file' | |
29 adding file3 | |
30 created new head | |
31 | |
25 failing merge | 32 failing merge |
26 | 33 |
27 $ hg merge --tool=internal:fail | 34 $ hg up -qC 2 |
35 $ hg merge --tool=internal:fail 1 | |
28 0 files updated, 0 files merged, 0 files removed, 2 files unresolved | 36 0 files updated, 0 files merged, 0 files removed, 2 files unresolved |
29 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon | 37 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon |
30 [1] | 38 [1] |
31 | 39 |
32 resolve -l should contain unresolved entries | 40 resolve -l should contain unresolved entries |
59 | 67 |
60 resolve -l should be empty after commit | 68 resolve -l should be empty after commit |
61 | 69 |
62 $ hg resolve -l | 70 $ hg resolve -l |
63 | 71 |
72 resolve --all should abort when no merge in progress | |
73 | |
74 $ hg resolve --all | |
75 abort: resolve command not applicable when not merging | |
76 [255] | |
77 | |
64 resolve -m should abort when no merge in progress | 78 resolve -m should abort when no merge in progress |
79 | |
80 $ hg resolve -m | |
81 abort: resolve command not applicable when not merging | |
82 [255] | |
83 | |
84 set up conflict-free merge | |
85 | |
86 $ hg up -qC 3 | |
87 $ hg merge 1 | |
88 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
89 (branch merge, don't forget to commit) | |
90 | |
91 BROKEN: resolve --all should do nothing in merge without conflicts | |
92 $ hg resolve --all | |
93 abort: resolve command not applicable when not merging | |
94 [255] | |
95 | |
96 BROKEN: resolve -m should do nothing in merge without conflicts | |
65 | 97 |
66 $ hg resolve -m | 98 $ hg resolve -m |
67 abort: resolve command not applicable when not merging | 99 abort: resolve command not applicable when not merging |
68 [255] | 100 [255] |
69 | 101 |
70 test crashed merge with empty mergestate | 102 test crashed merge with empty mergestate |
71 | 103 |
104 $ hg up -qC 1 | |
72 $ mkdir .hg/merge | 105 $ mkdir .hg/merge |
73 $ touch .hg/merge/state | 106 $ touch .hg/merge/state |
74 | 107 |
75 resolve -l should be empty | 108 resolve -l should be empty |
76 | 109 |