Mercurial > hg
view tests/test-convert-tagsbranch-topology @ 12039:18e1e7520b67 stable
alias: make shadowing behavior more consistent (issue2054)
Currently, given an alias like the following:
[alias]
summary = summary --remote
The alias might be executed - or it might not - depending on the order
of the cmdtable dict.
This happens because cmdalias gets assigned back to the cmdtable like so:
cmdtable['summary'] = ...
Yet '^summary|sum' is still in the table, so which one cmdutil.findcmd()
chooses isn't deterministic.
This patch makes cmdalias assign back to '^summary|sum'. It uses the same
cmdtable key lookup that extensions.wrapcommand() does.
author | Brodie Rao <brodie@bitheap.org> |
---|---|
date | Sat, 21 Aug 2010 22:48:14 -0400 |
parents | d1b135f2f415 |
children |
line wrap: on
line source
#!/bin/sh "$TESTDIR/hghave" git || exit 80 echo "[extensions]" >> $HGRCPATH echo "convert=" >> $HGRCPATH echo 'hgext.graphlog =' >> $HGRCPATH echo '[convert]' >> $HGRCPATH echo 'hg.usebranchnames = True' >> $HGRCPATH echo 'hg.tagsbranch = tags-update' >> $HGRCPATH GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL='test@example.org'; export GIT_AUTHOR_EMAIL GIT_AUTHOR_DATE="2007-01-01 00:00:00 +0000"; export GIT_AUTHOR_DATE GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; export GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; export GIT_COMMITTER_EMAIL GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE count=10 action() { GIT_AUTHOR_DATE="2007-01-01 00:00:$count +0000" GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE" git "$@" >/dev/null 2>/dev/null || echo "git command error" count=`expr $count + 1` } glog() { hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@" } convertrepo() { hg convert --datesort git-repo hg-repo } # Build a GIT repo with at least 1 tag mkdir git-repo cd git-repo git init >/dev/null 2>&1 echo a > a git add a action commit -m "rev1" action tag -m "tag1" tag1 cd .. # Do a first conversion convertrepo # Simulate upstream updates after first conversion cd git-repo echo b > a git add a action commit -m "rev2" action tag -m "tag2" tag2 cd .. # Perform an incremental conversion convertrepo # Print the log cd hg-repo glog