Mercurial > hg
changeset 12436:b52ce78de84d
tests: unify test-hgweb-empty
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:41:32 -0500 |
parents | 61be1503cfb2 |
children | b5538f89e5aa |
files | tests/test-hgweb-empty tests/test-hgweb-empty.out tests/test-hgweb-empty.t |
diffstat | 3 files changed, 376 insertions(+), 378 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-hgweb-empty Sun Sep 26 13:41:32 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -#!/bin/sh -# Some tests for hgweb in an empty repository - -hg init test -cd test -hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log -cat hg.pid >> $DAEMON_PIDS - -("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/shortlog') -("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log') -("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/graph') -("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file')
--- a/tests/test-hgweb-empty.out Sun Sep 26 13:41:32 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,366 +0,0 @@ -200 Script output follows - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> -<head> -<link rel="icon" href="/static/hgicon.png" type="image/png" /> -<meta name="robots" content="index, nofollow" /> -<link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> - -<title>test: log</title> -<link rel="alternate" type="application/atom+xml" - href="/atom-log" title="Atom feed for test" /> -<link rel="alternate" type="application/rss+xml" - href="/rss-log" title="RSS feed for test" /> -</head> -<body> - -<div class="container"> -<div class="menu"> -<div class="logo"> -<a href="http://mercurial.selenic.com/"> -<img src="/static/hglogo.png" alt="mercurial" /></a> -</div> -<ul> -<li class="active">log</li> -<li><a href="/graph/000000000000">graph</a></li> -<li><a href="/tags">tags</a></li> -<li><a href="/branches">branches</a></li> -</ul> -<ul> -<li><a href="/rev/000000000000">changeset</a></li> -<li><a href="/file/000000000000">browse</a></li> -</ul> -<ul> - -</ul> -</div> - -<div class="main"> -<h2><a href="/">test</a></h2> -<h3>log</h3> - -<form class="search" action="/log"> - -<p><input name="rev" id="search1" type="text" size="30" /></p> -<div id="hint">find changesets by author, revision, -files, or words in the commit message</div> -</form> - -<div class="navigate"> -<a href="/shortlog/-1?revcount=30">less</a> -<a href="/shortlog/-1?revcount=120">more</a> -| rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> -</div> - -<table class="bigtable"> - <tr> - <th class="age">age</th> - <th class="author">author</th> - <th class="description">description</th> - </tr> - -</table> - -<div class="navigate"> -<a href="/shortlog/-1?revcount=30">less</a> -<a href="/shortlog/-1?revcount=120">more</a> -| rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> -</div> - -</div> -</div> - - - -</body> -</html> - -200 Script output follows - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> -<head> -<link rel="icon" href="/static/hgicon.png" type="image/png" /> -<meta name="robots" content="index, nofollow" /> -<link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> - -<title>test: log</title> -<link rel="alternate" type="application/atom+xml" - href="/atom-log" title="Atom feed for test" /> -<link rel="alternate" type="application/rss+xml" - href="/rss-log" title="RSS feed for test" /> -</head> -<body> - -<div class="container"> -<div class="menu"> -<div class="logo"> -<a href="http://mercurial.selenic.com/"> -<img src="/static/hglogo.png" alt="mercurial" /></a> -</div> -<ul> -<li class="active">log</li> -<li><a href="/graph/000000000000">graph</a></li> -<li><a href="/tags">tags</a></li> -<li><a href="/branches">branches</a></li> -</ul> -<ul> -<li><a href="/rev/000000000000">changeset</a></li> -<li><a href="/file/000000000000">browse</a></li> -</ul> -<ul> - -</ul> -</div> - -<div class="main"> -<h2><a href="/">test</a></h2> -<h3>log</h3> - -<form class="search" action="/log"> - -<p><input name="rev" id="search1" type="text" size="30" /></p> -<div id="hint">find changesets by author, revision, -files, or words in the commit message</div> -</form> - -<div class="navigate"> -<a href="/shortlog/-1?revcount=5">less</a> -<a href="/shortlog/-1?revcount=20">more</a> -| rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> -</div> - -<table class="bigtable"> - <tr> - <th class="age">age</th> - <th class="author">author</th> - <th class="description">description</th> - </tr> - -</table> - -<div class="navigate"> -<a href="/shortlog/-1?revcount=5">less</a> -<a href="/shortlog/-1?revcount=20">more</a> -| rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> -</div> - -</div> -</div> - - - -</body> -</html> - -200 Script output follows - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> -<head> -<link rel="icon" href="/static/hgicon.png" type="image/png" /> -<meta name="robots" content="index, nofollow" /> -<link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> - -<title>test: revision graph</title> -<link rel="alternate" type="application/atom+xml" - href="/atom-log" title="Atom feed for test: log" /> -<link rel="alternate" type="application/rss+xml" - href="/rss-log" title="RSS feed for test: log" /> -<!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]--> -</head> -<body> - -<div class="container"> -<div class="menu"> -<div class="logo"> -<a href="http://mercurial.selenic.com/"> -<img src="/static/hglogo.png" alt="mercurial" /></a> -</div> -<ul> -<li><a href="/shortlog/000000000000">log</a></li> -<li class="active">graph</li> -<li><a href="/tags">tags</a></li> -<li><a href="/branches">branches</a></li> -</ul> -<ul> -<li><a href="/rev/000000000000">changeset</a></li> -<li><a href="/file/000000000000">browse</a></li> -</ul> -</div> - -<div class="main"> -<h2><a href="/">test</a></h2> -<h3>graph</h3> - -<form class="search" action="/log"> - -<p><input name="rev" id="search1" type="text" size="30" /></p> -<div id="hint">find changesets by author, revision, -files, or words in the commit message</div> -</form> - -<div class="navigate"> -<a href="/graph/-1?revcount=30">less</a> -<a href="/graph/-1?revcount=120">more</a> -| rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a> -</div> - -<noscript><p>The revision graph only works with JavaScript-enabled browsers.</p></noscript> - -<div id="wrapper"> -<ul id="nodebgs"></ul> -<canvas id="graph" width="224" height="12"></canvas> -<ul id="graphnodes"></ul> -</div> - -<script type="text/javascript" src="/static/graph.js"></script> -<script type="text/javascript"> -<!-- hide script content - -var data = []; -var graph = new Graph(); -graph.scale(39); - -graph.edge = function(x0, y0, x1, y1, color) { - - this.setColor(color, 0.0, 0.65); - this.ctx.beginPath(); - this.ctx.moveTo(x0, y0); - this.ctx.lineTo(x1, y1); - this.ctx.stroke(); - -} - -var revlink = '<li style="_STYLE"><span class="desc">'; -revlink += '<a href="/rev/_NODEID" title="_NODEID">_DESC</a>'; -revlink += '</span>_TAGS<span class="info">_DATE, by _USER</span></li>'; - -graph.vertex = function(x, y, color, parity, cur) { - - this.ctx.beginPath(); - color = this.setColor(color, 0.25, 0.75); - this.ctx.arc(x, y, radius, 0, Math.PI * 2, true); - this.ctx.fill(); - - var bg = '<li class="bg parity' + parity + '"></li>'; - var left = (this.columns + 1) * this.bg_height; - var nstyle = 'padding-left: ' + left + 'px;'; - var item = revlink.replace(/_STYLE/, nstyle); - item = item.replace(/_PARITY/, 'parity' + parity); - item = item.replace(/_NODEID/, cur[0]); - item = item.replace(/_NODEID/, cur[0]); - item = item.replace(/_DESC/, cur[3]); - item = item.replace(/_USER/, cur[4]); - item = item.replace(/_DATE/, cur[5]); - - var tagspan = ''; - if (cur[7].length || (cur[6][0] != 'default' || cur[6][1])) { - tagspan = '<span class="logtags">'; - if (cur[6][1]) { - tagspan += '<span class="branchhead" title="' + cur[6][0] + '">'; - tagspan += cur[6][0] + '</span> '; - } else if (!cur[6][1] && cur[6][0] != 'default') { - tagspan += '<span class="branchname" title="' + cur[6][0] + '">'; - tagspan += cur[6][0] + '</span> '; - } - if (cur[7].length) { - for (var t in cur[7]) { - var tag = cur[7][t]; - tagspan += '<span class="tag">' + tag + '</span> '; - } - } - tagspan += '</span>'; - } - - item = item.replace(/_TAGS/, tagspan); - return [bg, item]; - -} - -graph.render(data); - -// stop hiding script --> -</script> - -<div class="navigate"> -<a href="/graph/-1?revcount=30">less</a> -<a href="/graph/-1?revcount=120">more</a> -| rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a> -</div> - -</div> -</div> - - - -</body> -</html> - -200 Script output follows - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> -<head> -<link rel="icon" href="/static/hgicon.png" type="image/png" /> -<meta name="robots" content="index, nofollow" /> -<link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> - -<title>test: 000000000000 /</title> -</head> -<body> - -<div class="container"> -<div class="menu"> -<div class="logo"> -<a href="http://mercurial.selenic.com/"> -<img src="/static/hglogo.png" alt="mercurial" /></a> -</div> -<ul> -<li><a href="/shortlog/000000000000">log</a></li> -<li><a href="/graph/000000000000">graph</a></li> -<li><a href="/tags">tags</a></li> -<li><a href="/branches">branches</a></li> -</ul> -<ul> -<li><a href="/rev/000000000000">changeset</a></li> -<li class="active">browse</li> -</ul> -<ul> - -</ul> -</div> - -<div class="main"> -<h2><a href="/">test</a></h2> -<h3>directory / @ -1:000000000000 <span class="tag">tip</span> </h3> - -<form class="search" action="/log"> - -<p><input name="rev" id="search1" type="text" size="30" /></p> -<div id="hint">find changesets by author, revision, -files, or words in the commit message</div> -</form> - -<table class="bigtable"> -<tr> - <th class="name">name</th> - <th class="size">size</th> - <th class="permissions">permissions</th> -</tr> -<tr class="fileline parity0"> - <td class="name"><a href="/file/000000000000/">[up]</a></td> - <td class="size"></td> - <td class="permissions">drwxr-xr-x</td> -</tr> - - -</table> -</div> -</div> - - -</body> -</html> -
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-hgweb-empty.t Sun Sep 26 13:41:32 2010 -0500 @@ -0,0 +1,376 @@ +Some tests for hgweb in an empty repository + + $ hg init test + $ cd test + $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log + $ cat hg.pid >> $DAEMON_PIDS + $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/shortlog') + 200 Script output follows + + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> + <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> + <head> + <link rel="icon" href="/static/hgicon.png" type="image/png" /> + <meta name="robots" content="index, nofollow" /> + <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> + + <title>test: log</title> + <link rel="alternate" type="application/atom+xml" + href="/atom-log" title="Atom feed for test" /> + <link rel="alternate" type="application/rss+xml" + href="/rss-log" title="RSS feed for test" /> + </head> + <body> + + <div class="container"> + <div class="menu"> + <div class="logo"> + <a href="http://mercurial.selenic.com/"> + <img src="/static/hglogo.png" alt="mercurial" /></a> + </div> + <ul> + <li class="active">log</li> + <li><a href="/graph/000000000000">graph</a></li> + <li><a href="/tags">tags</a></li> + <li><a href="/branches">branches</a></li> + </ul> + <ul> + <li><a href="/rev/000000000000">changeset</a></li> + <li><a href="/file/000000000000">browse</a></li> + </ul> + <ul> + + </ul> + </div> + + <div class="main"> + <h2><a href="/">test</a></h2> + <h3>log</h3> + + <form class="search" action="/log"> + + <p><input name="rev" id="search1" type="text" size="30" /></p> + <div id="hint">find changesets by author, revision, + files, or words in the commit message</div> + </form> + + <div class="navigate"> + <a href="/shortlog/-1?revcount=30">less</a> + <a href="/shortlog/-1?revcount=120">more</a> + | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> + </div> + + <table class="bigtable"> + <tr> + <th class="age">age</th> + <th class="author">author</th> + <th class="description">description</th> + </tr> + + </table> + + <div class="navigate"> + <a href="/shortlog/-1?revcount=30">less</a> + <a href="/shortlog/-1?revcount=120">more</a> + | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> + </div> + + </div> + </div> + + + + </body> + </html> + + $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log') + 200 Script output follows + + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> + <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> + <head> + <link rel="icon" href="/static/hgicon.png" type="image/png" /> + <meta name="robots" content="index, nofollow" /> + <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> + + <title>test: log</title> + <link rel="alternate" type="application/atom+xml" + href="/atom-log" title="Atom feed for test" /> + <link rel="alternate" type="application/rss+xml" + href="/rss-log" title="RSS feed for test" /> + </head> + <body> + + <div class="container"> + <div class="menu"> + <div class="logo"> + <a href="http://mercurial.selenic.com/"> + <img src="/static/hglogo.png" alt="mercurial" /></a> + </div> + <ul> + <li class="active">log</li> + <li><a href="/graph/000000000000">graph</a></li> + <li><a href="/tags">tags</a></li> + <li><a href="/branches">branches</a></li> + </ul> + <ul> + <li><a href="/rev/000000000000">changeset</a></li> + <li><a href="/file/000000000000">browse</a></li> + </ul> + <ul> + + </ul> + </div> + + <div class="main"> + <h2><a href="/">test</a></h2> + <h3>log</h3> + + <form class="search" action="/log"> + + <p><input name="rev" id="search1" type="text" size="30" /></p> + <div id="hint">find changesets by author, revision, + files, or words in the commit message</div> + </form> + + <div class="navigate"> + <a href="/shortlog/-1?revcount=5">less</a> + <a href="/shortlog/-1?revcount=20">more</a> + | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> + </div> + + <table class="bigtable"> + <tr> + <th class="age">age</th> + <th class="author">author</th> + <th class="description">description</th> + </tr> + + </table> + + <div class="navigate"> + <a href="/shortlog/-1?revcount=5">less</a> + <a href="/shortlog/-1?revcount=20">more</a> + | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> + </div> + + </div> + </div> + + + + </body> + </html> + + $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/graph') + 200 Script output follows + + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> + <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> + <head> + <link rel="icon" href="/static/hgicon.png" type="image/png" /> + <meta name="robots" content="index, nofollow" /> + <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> + + <title>test: revision graph</title> + <link rel="alternate" type="application/atom+xml" + href="/atom-log" title="Atom feed for test: log" /> + <link rel="alternate" type="application/rss+xml" + href="/rss-log" title="RSS feed for test: log" /> + <!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]--> + </head> + <body> + + <div class="container"> + <div class="menu"> + <div class="logo"> + <a href="http://mercurial.selenic.com/"> + <img src="/static/hglogo.png" alt="mercurial" /></a> + </div> + <ul> + <li><a href="/shortlog/000000000000">log</a></li> + <li class="active">graph</li> + <li><a href="/tags">tags</a></li> + <li><a href="/branches">branches</a></li> + </ul> + <ul> + <li><a href="/rev/000000000000">changeset</a></li> + <li><a href="/file/000000000000">browse</a></li> + </ul> + </div> + + <div class="main"> + <h2><a href="/">test</a></h2> + <h3>graph</h3> + + <form class="search" action="/log"> + + <p><input name="rev" id="search1" type="text" size="30" /></p> + <div id="hint">find changesets by author, revision, + files, or words in the commit message</div> + </form> + + <div class="navigate"> + <a href="/graph/-1?revcount=30">less</a> + <a href="/graph/-1?revcount=120">more</a> + | rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a> + </div> + + <noscript><p>The revision graph only works with JavaScript-enabled browsers.</p></noscript> + + <div id="wrapper"> + <ul id="nodebgs"></ul> + <canvas id="graph" width="224" height="12"></canvas> + <ul id="graphnodes"></ul> + </div> + + <script type="text/javascript" src="/static/graph.js"></script> + <script type="text/javascript"> + <!-- hide script content + + var data = []; + var graph = new Graph(); + graph.scale(39); + + graph.edge = function(x0, y0, x1, y1, color) { + + this.setColor(color, 0.0, 0.65); + this.ctx.beginPath(); + this.ctx.moveTo(x0, y0); + this.ctx.lineTo(x1, y1); + this.ctx.stroke(); + + } + + var revlink = '<li style="_STYLE"><span class="desc">'; + revlink += '<a href="/rev/_NODEID" title="_NODEID">_DESC</a>'; + revlink += '</span>_TAGS<span class="info">_DATE, by _USER</span></li>'; + + graph.vertex = function(x, y, color, parity, cur) { + + this.ctx.beginPath(); + color = this.setColor(color, 0.25, 0.75); + this.ctx.arc(x, y, radius, 0, Math.PI * 2, true); + this.ctx.fill(); + + var bg = '<li class="bg parity' + parity + '"></li>'; + var left = (this.columns + 1) * this.bg_height; + var nstyle = 'padding-left: ' + left + 'px;'; + var item = revlink.replace(/_STYLE/, nstyle); + item = item.replace(/_PARITY/, 'parity' + parity); + item = item.replace(/_NODEID/, cur[0]); + item = item.replace(/_NODEID/, cur[0]); + item = item.replace(/_DESC/, cur[3]); + item = item.replace(/_USER/, cur[4]); + item = item.replace(/_DATE/, cur[5]); + + var tagspan = ''; + if (cur[7].length || (cur[6][0] != 'default' || cur[6][1])) { + tagspan = '<span class="logtags">'; + if (cur[6][1]) { + tagspan += '<span class="branchhead" title="' + cur[6][0] + '">'; + tagspan += cur[6][0] + '</span> '; + } else if (!cur[6][1] && cur[6][0] != 'default') { + tagspan += '<span class="branchname" title="' + cur[6][0] + '">'; + tagspan += cur[6][0] + '</span> '; + } + if (cur[7].length) { + for (var t in cur[7]) { + var tag = cur[7][t]; + tagspan += '<span class="tag">' + tag + '</span> '; + } + } + tagspan += '</span>'; + } + + item = item.replace(/_TAGS/, tagspan); + return [bg, item]; + + } + + graph.render(data); + + // stop hiding script --> + </script> + + <div class="navigate"> + <a href="/graph/-1?revcount=30">less</a> + <a href="/graph/-1?revcount=120">more</a> + | rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a> + </div> + + </div> + </div> + + + + </body> + </html> + + $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file') + 200 Script output follows + + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> + <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> + <head> + <link rel="icon" href="/static/hgicon.png" type="image/png" /> + <meta name="robots" content="index, nofollow" /> + <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> + + <title>test: 000000000000 /</title> + </head> + <body> + + <div class="container"> + <div class="menu"> + <div class="logo"> + <a href="http://mercurial.selenic.com/"> + <img src="/static/hglogo.png" alt="mercurial" /></a> + </div> + <ul> + <li><a href="/shortlog/000000000000">log</a></li> + <li><a href="/graph/000000000000">graph</a></li> + <li><a href="/tags">tags</a></li> + <li><a href="/branches">branches</a></li> + </ul> + <ul> + <li><a href="/rev/000000000000">changeset</a></li> + <li class="active">browse</li> + </ul> + <ul> + + </ul> + </div> + + <div class="main"> + <h2><a href="/">test</a></h2> + <h3>directory / @ -1:000000000000 <span class="tag">tip</span> </h3> + + <form class="search" action="/log"> + + <p><input name="rev" id="search1" type="text" size="30" /></p> + <div id="hint">find changesets by author, revision, + files, or words in the commit message</div> + </form> + + <table class="bigtable"> + <tr> + <th class="name">name</th> + <th class="size">size</th> + <th class="permissions">permissions</th> + </tr> + <tr class="fileline parity0"> + <td class="name"><a href="/file/000000000000/">[up]</a></td> + <td class="size"></td> + <td class="permissions">drwxr-xr-x</td> + </tr> + + + </table> + </div> + </div> + + + </body> + </html> +