Mercurial > hg > pyhgsh
view tests/run-tests @ 599:765182a4c843
[PATCH] Add RSS support to hgweb
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
[PATCH] Add RSS support to hgweb
From: Goffredo Baroncelli <kreijack@libero.it>
with the two small patches below, now hgweb can act as feed source.
Two kinds ofobjects can be tracked: the changelong and the files. This
can be useful if anyone would track the changes of a file ( and
because git has it, mercurial have to has ).
To check the changelog the url is
http://127.0.0.1:8000/pippo.pluto?cmd=changelog;style=rss
To check a file ( the mercurial/hgweb.py for examples ) the url is
http://127.0.0.1:8000/?cmd=filelog;file=mercurial/hgweb.py;filenode=0;style=rss
The first patch adds a new filter for the template: the filter is
named rfc822date, and translates the date from the touple format to a
rfc822 style date. The second patch adds the templates needed to
create the rss pages.
Tested with akgregator ( kde ).
[tweaked by mpm:
add Content-type: text/xml
add support for URL to header()
add header with link and content type
add RSS links on the normal pages]
manifest hash: 170c03d50490d7160097f59abdde1a5073d2ba82
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)
iD8DBQFCyFmLywK+sNU5EO8RApkrAKCYF/vZ3DwdMXPBds2LxGEX8+tK5QCfTeOc
ZhPN8Xjt2cD3wMbNXMcoNSo=
=COlM
-----END PGP SIGNATURE-----
author | mpm@selenic.com |
---|---|
date | Sun, 03 Jul 2005 13:32:59 -0800 |
parents | 4fc63e22b1fe |
children | d2994b5298fb |
line wrap: on
line source
#!/bin/sh -e export LANG=C export LC_CTYPE="C" export LC_NUMERIC="C" export LC_TIME="C" export LC_COLLATE="C" export LC_MONETARY="C" export LC_MESSAGES="C" export LC_PAPER="C" export LC_NAME="C" export LC_ADDRESS="C" export LC_TELEPHONE="C" export LC_MEASUREMENT="C" export LC_IDENTIFICATION="C" export LC_ALL="" umask 022 tests=0 failed=0 H=$PWD if [ -d /usr/lib64 ]; then lib=lib64 else lib=lib fi TESTPATH=$PWD/install/bin export PATH=$TESTPATH:$PATH export PYTHONPATH=$PWD/install/$lib/python rm -rf install cd .. ${PYTHON:-python} setup.py install --home=tests/install > tests/install.err if [ $? != 0 ] ; then cat tests/install.err fi cd $H rm install.err function run_one { rm -f $1.err export TZ=GMT D=`mktemp -d` if [ "$D" = "" ] ; then echo mktemp failed! fi cd $D fail=0 if ! $H/$1 > .out 2>&1 ; then echo $1 failed with error code $? fail=1 fi if [ -s .out -a ! -r $H/$1.out ] ; then echo $1 generated unexpected output: cat .out cp .out $H/$1.err fail=1 elif [ -r $H/$1.out ] && ! diff -u $H/$1.out .out > /dev/null ; then echo $1 output changed: diff -u $H/$1.out .out && true cp .out $H/$1.err fail=1 fi cd $H rm -r $D return $fail } TESTS=$@ if [ "$TESTS" = "" ] ; then TESTS=`ls test-* | grep -Ev "\.|~"` fi for f in $TESTS ; do echo -n "." if ! run_one $f ; then failed=$[$failed + 1] fi tests=$[$tests + 1] done rm -rf install echo echo Ran $tests tests, $failed failed if [ $failed -gt 0 ] ; then exit 1 fi