view tests/test-walk @ 7618:6c89dd0a7797

Bugzilla 2.18 and on use contrib/sendbugmail.pl, not processmail. During 2.17, Bugzilla ditched the old 'processmail' script. With 2.18 contrib/sendbugmail.pl arrived in its place. For notification emails to work properly, sendbugmail.pl requires as its second parameter the Bugzilla user who made the commit. Otherwise the user will not be recognised as the committer, and will receive notification emails about the commit regardless of their preference about being notified on their own commits. This parameter should be given to processmail also, but wasn't for historical reasons. Add new config with the local Bugzilla install directory, and provide defaults for the notify string which should work for most setups. Still permit notify string to be specified, and for backwards compatibility with any extant notify strings try first interpolating notify string with old-style single bug ID argument. Add new 2.18 support version to introduce sendbugmail.pl. In other words, this update should be backwards-compatible with existing installations, but offers simplified setup in most cases. And as a bonus Bugzilla notification emails will be dispatched correctly; notifiers will not receive an email unless configured to do so.
author Jim Hague <jim.hague@acm.org>
date Fri, 09 Jan 2009 22:15:08 +0000
parents cfb4a51da7d5
children
line wrap: on
line source

#!/bin/sh

debugwalk()
{
    echo "hg debugwalk $@"
    hg debugwalk "$@"
    echo
}

chdir()
{
    echo "cd $@"
    cd "$@"
    echo
}

mkdir t
cd t
hg init
mkdir -p beans
for b in kidney navy turtle borlotti black pinto; do
    echo $b > beans/$b
done
mkdir -p mammals/Procyonidae
for m in cacomistle coatimundi raccoon; do
    echo $m > mammals/Procyonidae/$m
done
echo skunk > mammals/skunk
echo fennel > fennel
echo fenugreek > fenugreek
echo fiddlehead > fiddlehead
echo glob:glob > glob:glob
hg addremove
hg commit -m "commit #0" -d "1000000 0"
debugwalk
debugwalk -I.
chdir mammals
debugwalk
debugwalk -X ../beans
debugwalk -I '*k'
debugwalk -I 'glob:*k'
debugwalk -I 'relglob:*k'
debugwalk -I 'relglob:*k' .
debugwalk -I 're:.*k$'
debugwalk -I 'relre:.*k$'
debugwalk -I 'path:beans'
debugwalk -I 'relpath:../beans'
debugwalk .
debugwalk -I.
debugwalk Procyonidae
chdir Procyonidae
debugwalk .
debugwalk ..
chdir ..
debugwalk ../beans
debugwalk .
debugwalk .hg
debugwalk ../.hg
chdir ..
debugwalk -Ibeans
debugwalk -I '{*,{b,m}*/*}k'
debugwalk 'glob:mammals/../beans/b*'
debugwalk '-X*/Procyonidae' mammals
debugwalk path:mammals
debugwalk ..
debugwalk beans/../..
debugwalk .hg
debugwalk beans/../.hg
debugwalk beans/../.hg/data
debugwalk beans/.hg
# Don't know how to test absolute paths without always getting a false
# error.
#debugwalk `pwd`/beans
#debugwalk `pwd`/..
debugwalk glob:\*
debugwalk 'glob:**e'
debugwalk 're:.*[kb]$'
debugwalk path:beans/black
debugwalk path:beans//black
debugwalk relglob:Procyonidae
debugwalk 'relglob:Procyonidae/**'
debugwalk 'relglob:Procyonidae/**' fennel
debugwalk beans 'glob:beans/*'
debugwalk 'glob:mamm**'
debugwalk 'glob:mamm**' fennel
debugwalk 'glob:j*'
debugwalk NOEXIST
mkfifo fifo
debugwalk fifo
rm fenugreek
debugwalk fenugreek
hg rm fenugreek
debugwalk fenugreek
touch new
debugwalk new

mkdir ignored
touch ignored/file
echo '^ignored$' > .hgignore
debugwalk ignored
debugwalk ignored/file

chdir ..
debugwalk -R t t/mammals/skunk
mkdir t2
chdir t2
debugwalk -R ../t ../t/mammals/skunk
debugwalk --cwd ../t mammals/skunk