[PATCH 4 of 4 stable] hgweb: test case for broken URLs of RSS/Atom feeds (issue1772)
Yuya Nishihara
yuya at tcha.org
Wed Mar 10 09:33:32 CST 2010
# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1268234916 -32400
# Branch stable
# Node ID ffad916e531ea8a34564d961c220e5e2ca504ad4
# Parent cb34244bd470f10d5ab3023918d06204af004696
hgweb: test case for broken URLs of RSS/Atom feeds (issue1772)
diff --git a/tests/test-hgwebdir b/tests/test-hgwebdir
--- a/tests/test-hgwebdir
+++ b/tests/test-hgwebdir
@@ -51,6 +51,13 @@ echo % should succeed
echo % should give a 404 - repo is not published
"$TESTDIR/get-with-headers.py" localhost:$HGPORT '/c/file/tip/c?style=raw'
+echo % atom-log without basedir
+"$TESTDIR/get-with-headers.py" localhost:$HGPORT '/a/atom-log' \
+ | grep '<link' | sed 's|//[.a-zA-Z0-9\-_]*:[0-9][0-9]*/|//example.com:8080/|'
+
+echo % rss-log without basedir
+"$TESTDIR/get-with-headers.py" localhost:$HGPORT '/a/rss-log' \
+ | grep '<guid' | sed 's|//[.a-zA-Z0-9\-_]*:[0-9][0-9]*/|//example.com:8080/|'
cat > paths.conf <<EOF
[paths]
@@ -119,6 +126,28 @@ echo % collections: should succeed
"$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/b/file/tip/b?style=raw'
"$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/c/file/tip/c?style=raw'
+echo % atom-log with basedir /
+"$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/atom-log' \
+ | grep '<link' | sed 's|//[.a-zA-Z0-9\-_]*:[0-9][0-9]*/|//example.com:8080/|'
+
+echo % rss-log with basedir /
+"$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/rss-log' \
+ | grep '<guid' | sed 's|//[.a-zA-Z0-9\-_]*:[0-9][0-9]*/|//example.com:8080/|'
+
+"$TESTDIR/killdaemons.py"
+
+hg serve --config web.baseurl=http://hg.example.com:8080/foo/ -p $HGPORT2 -d \
+ --pid-file=hg.pid --webdir-conf collections.conf \
+ -A access-collections-2.log -E error-collections-2.log
+cat hg.pid >> $DAEMON_PIDS
+
+echo % atom-log with basedir /foo/
+"$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/atom-log' \
+ | grep '<link' | sed 's|//[.a-zA-Z0-9\-_]*:[0-9][0-9]*/|//example.com:8080/|'
+
+echo % rss-log with basedir /foo/
+"$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/rss-log' \
+ | grep '<guid' | sed 's|//[.a-zA-Z0-9\-_]*:[0-9][0-9]*/|//example.com:8080/|'
echo % paths errors 1
cat error-paths-1.log
@@ -128,3 +157,5 @@ echo % paths errors 3
cat error-paths-3.log
echo % collections errors
cat error-collections.log
+echo % collections errors 2
+cat error-collections-2.log
diff --git a/tests/test-hgwebdir.out b/tests/test-hgwebdir.out
--- a/tests/test-hgwebdir.out
+++ b/tests/test-hgwebdir.out
@@ -25,6 +25,12 @@ 404 Not Found
error: repository c not found
+% atom-log without basedir
+ <link rel="self" href="http://example.com:8080/a/atom-log"/>
+ <link rel="alternate" href="http://example.com:8080/a/"/>
+ <link href="http://example.com:8080/a/rev/8580ff50825a"/>
+% rss-log without basedir
+ <guid isPermaLink="true">http://example.com:8080/a/rev/8580ff50825a</guid>
% should succeed, slashy names
200 Script output follows
@@ -337,7 +343,20 @@ b
200 Script output follows
c
+% atom-log with basedir /
+ <link rel="self" href="http://example.com:8080/a/atom-log"/>
+ <link rel="alternate" href="http://example.com:8080/a/"/>
+ <link href="http://example.com:8080/a/rev/8580ff50825a"/>
+% rss-log with basedir /
+ <guid isPermaLink="true">http://example.com:8080/a/rev/8580ff50825a</guid>
+% atom-log with basedir /foo/
+ <link rel="self" href="http://example.com:8080/foo/a/atom-log"/>
+ <link rel="alternate" href="http://example.com:8080/foo/a/"/>
+ <link href="http://example.com:8080/foo/a/rev/8580ff50825a"/>
+% rss-log with basedir /foo/
+ <guid isPermaLink="true">http://example.com:8080/foo/a/rev/8580ff50825a</guid>
% paths errors 1
% paths errors 2
% paths errors 3
% collections errors
+% collections errors 2
More information about the Mercurial-devel
mailing list