tests/testlib/push-checkheads-util.sh
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 09 Apr 2024 14:36:01 +0200
changeset 51598 4a9d0898bf16
parent 48702 053a5bf508da
permissions -rw-r--r--
bundlespec: fix the "streamv2" and "streamv3-exp" variant In c4aab3661f25, we broken this feature by adding unicode instead of bytes to the dictionary. On the other hand, this feature was never tested, so augment the tests to tests this.

# 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
}