Mercurial > hg
view tests/library-infinitepush.sh @ 40729:c93d046d4300
extensions: add "uipopulate" hook, called per instance, not per process
In short, this is the "reposetup" function for ui. It allows us to modify
ui attributes without extending ui.__class__. Before, the only way to do
that was to abuse the config dictionary, which is copied across ui instances.
See the next patch for usage example.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 12 Nov 2018 21:10:51 +0900 |
parents | 03ff17a4bf53 |
children | 0826d684a1b5 |
line wrap: on
line source
scratchnodes() { for node in `find ../repo/.hg/scratchbranches/index/nodemap/* | sort`; do echo ${node##*/} `cat $node` done } scratchbookmarks() { for bookmark in `find ../repo/.hg/scratchbranches/index/bookmarkmap/* -type f | sort`; do echo "${bookmark##*/bookmarkmap/} `cat $bookmark`" done } setupcommon() { cat >> $HGRCPATH << EOF [extensions] infinitepush= [ui] ssh = python "$TESTDIR/dummyssh" [infinitepush] branchpattern=re:scratch/.* EOF } setupserver() { cat >> .hg/hgrc << EOF [infinitepush] server=yes indextype=disk storetype=disk reponame=babar EOF } waitbgbackup() { sleep 1 hg debugwaitbackup } mkcommitautobackup() { echo $1 > $1 hg add $1 hg ci -m $1 --config infinitepushbackup.autobackup=True } setuplogdir() { mkdir $TESTTMP/logs chmod 0755 $TESTTMP/logs chmod +t $TESTTMP/logs }