Mercurial > hg
view tests/testlib/push-checkheads-util.sh @ 51274:bec6e9c108fd
matchers: use correct method for finding index in vector
The path matcher has an optimization for when all paths are `rootfilesin:`. This
optimization exists in both Python and Rust. However, the Rust implementation
currently has a bug that makes it fail in most cases. The bug is that it
`rfind()` where it was clearly intended to use `rposition()`. This patch fixes
that and adds a test.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Mon, 18 Dec 2023 14:51:20 -0800 |
parents | 053a5bf508da |
children |
line wrap: on
line source
# setup config and various utility to test new heads checks on push cat >> $HGRCPATH <<EOF [command-templates] # simpler log output log ="{node|short} ({phase}): {desc}\n" [phases] # non publishing server publish=False [extensions] # we need to strip some changeset for some test cases strip= [experimental] # enable evolution evolution=all [alias] # fix date used to create obsolete markers. debugobsolete=debugobsolete -d '0 0' EOF mkcommit() { echo "$1" > "$1" hg add "$1" hg ci -m "$1" } getid() { hg log --hidden --template '{node}\n' --rev "$1" } setuprepos() { echo creating basic server and client repo hg init server cd server mkcommit root hg phase --public . mkcommit A0 cd .. hg clone server client if [ "$1" = "single-head" ]; then echo >> "server/.hg/hgrc" "[experimental]" echo >> "server/.hg/hgrc" "# enforce a single name per branch" echo >> "server/.hg/hgrc" "single-head-per-branch = yes" fi }