##// END OF EJS Templates
Do not use osutil.c with python 2.4 and Windows (issue1364)...
Do not use osutil.c with python 2.4 and Windows (issue1364) Windows python 2.4 os.stat() reports times including DST offset, while osutil.c reports the correct value, which makes status() systematically compare files content. This bug is fixed in python 2.5. Using osutil.py instead of osutil.c is 4x times slower on large repositories but current code is completely unusable. Given few people are likely to use python 2.4 on Windows this solution was considered a good trade-off compared to more invasive solutions trying to address the offset issue.

File last commit:

r10257:a9c0d606 merge default
r10521:bde1bb25 stable
Show More
test-highlight
141 lines | 3.2 KiB | text/plain | TextLexer
Dirkjan Ochtman
tests: add highlight extension tests
r6355 #!/bin/sh
"$TESTDIR/hghave" pygments || exit 80
cat <<EOF >> $HGRCPATH
[extensions]
Christian Ebert
tests highlight, keyword: load extensions with "ext ="
r10125 highlight =
Isaac Jurado
highlight: Generate pygments style sheet dynamically...
r6485 [web]
pygments_style = friendly
Dirkjan Ochtman
tests: add highlight extension tests
r6355 EOF
hg init test
cd test
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 # create random Python file to exercise Pygments
cat <<EOF > primes.py
#!/usr/bin/env python
"""Fun with generators. Corresponding Haskell implementation:
primes = 2 : sieve [3, 5..]
where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0]
"""
from itertools import dropwhile, ifilter, islice, count, chain
def primes():
"""Generate all primes."""
def sieve(ns):
p = ns.next()
# It is important to yield *here* in order to stop the
# infinite recursion.
yield p
ns = ifilter(lambda n: n % p != 0, ns)
for n in sieve(ns):
yield n
odds = ifilter(lambda i: i % 2 == 1, count())
return chain([2], sieve(dropwhile(lambda n: n < 3, odds)))
if __name__ == "__main__":
import sys
try:
n = int(sys.argv[1])
except (ValueError, IndexError):
n = 10
p = primes()
print "The first %d primes: %s" % (n, list(islice(p, n)))
EOF
Christian Ebert
highlight: convert text to local before passing to pygmentize (issue1341)...
r7120
Dirkjan Ochtman
tests: add highlight extension tests
r6355 hg ci -Ama
echo % hg serve
hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log
cat hg.pid >> $DAEMON_PIDS
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987 echo % hgweb filerevision, html
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/primes.py') \
Christian Ebert
test-highlight: adapt output to latest pygments keeping backwards compatibility
r8083 | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mf\"/class=\"mi\"/g"
Dirkjan Ochtman
tests: add highlight extension tests
r6355
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987 echo % hgweb fileannotate, html
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/annotate/tip/primes.py') \
Christian Ebert
test-highlight: adapt output to latest pygments keeping backwards compatibility
r8083 | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mi\"/class=\"mf\"/g"
Dirkjan Ochtman
tests: add highlight extension tests
r6355
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987 echo % hgweb fileannotate, raw
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/annotate/tip/primes.py?style=raw') \
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987 | sed "s/test@//" > a
echo "200 Script output follows" > b
echo "" >> b
echo "" >> b
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 hg annotate "primes.py" >> b
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987 echo "" >> b
echo "" >> b
echo "" >> b
echo "" >> b
diff -u b a
echo
echo % hgweb filerevision, raw
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/primes.py?style=raw') \
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987 > a
echo "200 Script output follows" > b
echo "" >> b
Martin Geisler
test-highlight: decouple test from get-with-headers.py...
r8485 hg cat primes.py >> b
Rocco Rutte
highlight: only pygmentize for HTML mimetypes...
r6987
diff -u b a
echo
Isaac Jurado
highlight: Generate pygments style sheet dynamically...
r6485 echo % hgweb highlightcss friendly
Brendan Cully
Fix intermittent broken pipe in test-highlight
r6863 "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/highlightcss' > out
head -n 4 out
rm out
Isaac Jurado
highlight: Generate pygments style sheet dynamically...
r6485
echo % errors encountered
cat errors.log
Dirkjan Ochtman
tests: use killdaemons.py in test-highlight
r7623 "$TESTDIR/killdaemons.py"
Isaac Jurado
highlight: Generate pygments style sheet dynamically...
r6485
# Change the pygments style
cat > .hg/hgrc <<EOF
[web]
pygments_style = fruity
EOF
echo % hg serve again
hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log
cat hg.pid >> $DAEMON_PIDS
echo % hgweb highlightcss fruity
Brendan Cully
Fix intermittent broken pipe in test-highlight
r6863 "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/highlightcss' > out
head -n 4 out
rm out
Isaac Jurado
highlight: Generate pygments style sheet dynamically...
r6485
Dirkjan Ochtman
tests: add highlight extension tests
r6355 echo % errors encountered
cat errors.log
Yuya Nishihara
highlight: fixes garbled text in non-UTF-8 environment...
r9424
cd ..
hg init eucjp
cd eucjp
Jim Hague
Work around AIX shell builtin printf not handling \NNN....
r10253 python -c 'print("\265\376")' >> eucjp.txt # Japanese kanji "Kyo"
Yuya Nishihara
highlight: fixes garbled text in non-UTF-8 environment...
r9424
hg ci -Ama
hgserveget () {
"$TESTDIR/killdaemons.py"
echo % HGENCODING="$1" hg serve
HGENCODING="$1" hg serve -p $HGPORT -d -n test --pid-file=hg.pid -E errors.log
cat hg.pid >> $DAEMON_PIDS
echo % hgweb filerevision, html
"$TESTDIR/get-with-headers.py" localhost:$HGPORT "/file/tip/$2" \
| grep '<div class="parity0 source">' | $TESTDIR/printrepr.py
echo % errors encountered
cat errors.log
}
hgserveget euc-jp eucjp.txt
hgserveget utf-8 eucjp.txt
hgserveget us-ascii eucjp.txt