D7661: rebase: use cmdutil.check_incompatible_arguments() for action+confirm/dryrun
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Tue Dec 17 13:10:52 EST 2019
martinvonz updated this revision to Diff 18820.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D7661?vs=18768&id=18820
BRANCH
default
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D7661/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D7661
AFFECTED FILES
hgext/rebase.py
tests/test-rebase-inmemory.t
tests/test-rebase-obsolete.t
CHANGE DETAILS
diff --git a/tests/test-rebase-obsolete.t b/tests/test-rebase-obsolete.t
--- a/tests/test-rebase-obsolete.t
+++ b/tests/test-rebase-obsolete.t
@@ -2054,7 +2054,7 @@
unresolved conflicts (see hg resolve, then hg rebase --continue)
[1]
$ hg rebase --stop --dry-run
- abort: cannot specify both --dry-run and --stop
+ abort: cannot specify both --stop and --dry-run
[255]
$ hg rebase -s 3 -d 5
diff --git a/tests/test-rebase-inmemory.t b/tests/test-rebase-inmemory.t
--- a/tests/test-rebase-inmemory.t
+++ b/tests/test-rebase-inmemory.t
@@ -332,10 +332,10 @@
Make sure it throws error while passing --continue or --abort with --dry-run
$ hg rebase -s 2 -d 6 -n --continue
- abort: cannot specify both --dry-run and --continue
+ abort: cannot specify both --continue and --dry-run
[255]
$ hg rebase -s 2 -d 6 -n --abort
- abort: cannot specify both --dry-run and --abort
+ abort: cannot specify both --abort and --dry-run
[255]
Check dryrun gives correct results when there is no conflict in rebasing
@@ -548,10 +548,10 @@
abort: cannot specify both --confirm and --dry-run
[255]
$ hg rebase -s 2 -d . --confirm --abort
- abort: cannot specify both --confirm and --abort
+ abort: cannot specify both --abort and --confirm
[255]
$ hg rebase -s 2 -d . --confirm --continue
- abort: cannot specify both --confirm and --continue
+ abort: cannot specify both --continue and --confirm
[255]
Test --confirm option when there are no conflicts:
diff --git a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -1022,10 +1022,10 @@
dryrun = opts.get(b'dry_run')
confirm = opts.get(b'confirm')
action = cmdutil.check_at_most_one_arg(opts, b'abort', b'stop', b'continue')
- if dryrun and action:
- raise error.Abort(_(b'cannot specify both --dry-run and --%s') % action)
- if confirm and action:
- raise error.Abort(_(b'cannot specify both --confirm and --%s') % action)
+ if action:
+ cmdutil.check_incompatible_arguments(
+ opts, action, b'confirm', b'dry_run'
+ )
cmdutil.check_at_most_one_arg(opts, b'confirm', b'dry_run')
if action or repo.currenttransaction() is not None:
To: martinvonz, #hg-reviewers, pulkit
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list