From b4649fc90597910c89c3f37a6aec9af54d9f416b Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Sun, 11 Nov 2007 00:40:58 +0100 Subject: Create initial testsuite This creates a simple testsuite, heavily inspired by the testsuite in git. Signed-off-by: Lars Hjemli --- tests/t0104-tree.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100755 tests/t0104-tree.sh (limited to 'tests/t0104-tree.sh') diff --git a/tests/t0104-tree.sh b/tests/t0104-tree.sh new file mode 100755 index 0000000..9c362ca --- /dev/null +++ b/tests/t0104-tree.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +. ./setup.sh + +prepare_tests "Check content on tree page" + +run_test 'generate bar/tree' 'cgit_url "bar/tree" >trash/tmp' +run_test 'find file-1' 'grep -e "file-1" trash/tmp' +run_test 'find file-50' 'grep -e "file-50" trash/tmp' + +run_test 'generate bar/tree/file-50' 'cgit_url "bar/tree/file-50" >trash/tmp' +run_test 'find line 1' 'grep -e "1" trash/tmp' +run_test 'no line 2' 'grep -ve "2" trash/tmp' + +tests_done -- cgit v1.2.3-70-g09d2 From 2915483ef6c9c29ac1493e6945688bb62f7825b4 Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Sun, 11 Nov 2007 13:04:28 +0100 Subject: Fix html error detected by test-suite Signed-off-by: Lars Hjemli --- cgit.css | 6 +++++- html.c | 2 +- tests/t0104-tree.sh | 10 ++++++++-- tests/t0105-commit.sh | 2 +- ui-commit.c | 6 +++--- ui-diff.c | 2 +- ui-log.c | 2 +- ui-repolist.c | 2 +- ui-shared.c | 24 ++++++++++++------------ ui-summary.c | 2 +- ui-tree.c | 6 +++--- 11 files changed, 37 insertions(+), 27 deletions(-) (limited to 'tests/t0104-tree.sh') diff --git a/cgit.css b/cgit.css index f1003b4..565427f 100644 --- a/cgit.css +++ b/cgit.css @@ -111,7 +111,11 @@ div#sidebar div.infobox { div#sidebar div.infobox h1 { font-size: 10pt; font-weight: bold; - margin: 0px; + margin: 8px 0px 0px 0px; +} + +div#sidebar div.infobox h1.first { + margin-top: 0px; } div#sidebar div.infobox a.menu { diff --git a/html.c b/html.c index 6c9cc8b..eb163d9 100644 --- a/html.c +++ b/html.c @@ -132,7 +132,7 @@ void html_option(char *value, char *text, char *selected_value) html_attr(value); html("'"); if (selected_value && !strcmp(selected_value, value)) - html(" selected"); + html(" selected='selected'"); html(">"); html_txt(text); html("\n"); diff --git a/tests/t0104-tree.sh b/tests/t0104-tree.sh index 9c362ca..2516c72 100755 --- a/tests/t0104-tree.sh +++ b/tests/t0104-tree.sh @@ -9,7 +9,13 @@ run_test 'find file-1' 'grep -e "file-1" trash/tmp' run_test 'find file-50' 'grep -e "file-50" trash/tmp' run_test 'generate bar/tree/file-50' 'cgit_url "bar/tree/file-50" >trash/tmp' -run_test 'find line 1' 'grep -e "1" trash/tmp' -run_test 'no line 2' 'grep -ve "2" trash/tmp' + +run_test 'find line 1' ' + grep -e "1" trash/tmp +' + +run_test 'no line 2' ' + grep -e "2" trash/tmp +' tests_done diff --git a/tests/t0105-commit.sh b/tests/t0105-commit.sh index 7137751..aa2bf33 100755 --- a/tests/t0105-commit.sh +++ b/tests/t0105-commit.sh @@ -13,7 +13,7 @@ run_test 'find commit subject' ' ' run_test 'find commit msg' 'grep -e "
" trash/tmp' -run_test 'find diffstat' 'grep -e "" trash/tmp' +run_test 'find diffstat' 'grep -e "
" trash/tmp' run_test 'find diff summary' ' grep -e "1 files changed, 1 insertions, 0 deletions" trash/tmp diff --git a/ui-commit.c b/ui-commit.c index 4ac8955..bd55a33 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -84,7 +84,7 @@ void print_fileinfo(struct fileinfo *info) html("
"); htmlf("%d", info->added + info->removed); html(""); - htmlf("", (max_changes > 100 ? 100 : max_changes)); + htmlf("
", (max_changes > 100 ? 100 : max_changes)); htmlf("
", info->added * 100.0 / max_changes); htmlf("", @@ -157,7 +157,7 @@ void cgit_print_commit(char *hex) } info = cgit_parse_commit(commit); - html("\n"); + html("
\n"); html("
author"); html_txt(info->author); html(" "); @@ -209,7 +209,7 @@ void cgit_print_commit(char *hex) html(""); if (!(commit->parents && commit->parents->next && commit->parents->next->next)) { html("
Diffstat
"); - html(""); + html("
"); max_changes = 0; cgit_diff_commit(commit, inspect_filepair); for(i = 0; i"); + html("
"); html(""); diff --git a/ui-log.c b/ui-log.c index e5f3c57..a41d2b2 100644 --- a/ui-log.c +++ b/ui-log.c @@ -90,7 +90,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern } prepare_revision_walk(&rev); - html("
"); cgit_diff_tree(old_rev_sha1, new_rev_sha1, filepair_cb, prefix); html("
"); + html("
"); html("" ""); diff --git a/ui-repolist.c b/ui-repolist.c index 9aa5c1e..3e97ca9 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -53,7 +53,7 @@ void cgit_print_repolist(struct cacheitem *item) cgit_print_docstart(cgit_root_title, item); cgit_print_pageheader(cgit_root_title, 0); - html("
AgeMessage
"); + html("
"); if (cgit_index_header) { htmlf("
", columns); diff --git a/ui-shared.c b/ui-shared.c index 7c69f60..9ec646b 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -358,7 +358,7 @@ void cgit_print_docstart(char *title, struct cacheitem *item) ttl_seconds(item->ttl))); html("\n"); html(cgit_doctype); - html("\n"); + html("\n"); html("\n"); html(""); html_txt(title); @@ -373,7 +373,7 @@ void cgit_print_docstart(char *title, struct cacheitem *item) void cgit_print_docend() { - html("</td>\n</tr>\n<table>\n</body>\n</html>\n"); + html("</td>\n</tr>\n</table>\n</body>\n</html>\n"); } int print_branch_option(const char *refname, const unsigned char *sha1, @@ -456,21 +456,21 @@ void cgit_print_pageheader(char *title, int show_search) int header = 0; html("<div id='sidebar'>\n"); - html("<a href='"); + html("<div id='logo'><a href='"); html_attr(cgit_rooturl()); - htmlf("'><div id='logo'><img src='%s' alt='cgit'/></div></a>\n", + htmlf("'><img src='%s' alt='cgit'/></a></div>\n", cgit_logo); html("<div class='infobox'>"); if (cgit_query_repo) { - html("<h1>"); + html("<h1 class='first'>"); html_txt(strrpart(cgit_repo->name, 20)); html("</h1>\n"); html_txt(cgit_repo->desc); if (cgit_repo->owner) { - html("<p>\n<h1>owner</h1>\n"); + html("<h1>owner</h1>\n"); html_txt(cgit_repo->owner); } - html("<p>\n<h1>navigate</h1>\n"); + html("<h1>navigate</h1>\n"); reporevlink(NULL, "summary", NULL, "menu", cgit_query_head, NULL, NULL); cgit_log_link("log", NULL, "menu", cgit_query_head, NULL, NULL, @@ -484,19 +484,19 @@ void cgit_print_pageheader(char *title, int show_search) for_each_ref(print_archive_ref, &header); - html("<p>\n<h1>branch</h1>\n"); + html("<h1>branch</h1>\n"); html("<form method='get' action=''>\n"); add_hidden_formfields(0, 1, cgit_query_page); - html("<table class='grid'><tr><td id='branch-dropdown-cell'>"); + html("<table summary='branch selector' class='grid'><tr><td id='branch-dropdown-cell'>"); html("<select name='h' onchange='this.form.submit();'>\n"); for_each_branch_ref(print_branch_option, cgit_query_head); html("</select>\n"); html("</td><td>"); - html("<noscript><input type='submit' id='switch-btn' value='..'></noscript>\n"); + html("<noscript><input type='submit' id='switch-btn' value='..'/></noscript>\n"); html("</td></tr></table>"); html("</form>\n"); - html("<p>\n<h1>search</h1>\n"); + html("<h1>search</h1>\n"); html("<form method='get' action='"); if (cgit_virtual_root) html_attr(cgit_fileurl(cgit_query_repo, "log", @@ -519,7 +519,7 @@ void cgit_print_pageheader(char *title, int show_search) html("</div>\n"); - html("</div>\n<table class='grid'><tr><td id='content'>\n"); + html("</div>\n<table summary='page content' class='grid'><tr><td id='content'>\n"); } diff --git a/ui-summary.c b/ui-summary.c index c856793..b96414e 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -190,7 +190,7 @@ void cgit_print_summary() if (cgit_summary_log > 0) cgit_print_log(cgit_query_head, 0, cgit_summary_log, NULL, NULL, NULL, 0); - html("<table class='list nowrap'>"); + html("<table summary='repository info' class='list nowrap'>"); if (cgit_summary_log > 0) html("<tr class='nohover'><td colspan='4'> </td></tr>"); cgit_print_branches(cgit_summary_branches); diff --git a/ui-tree.c b/ui-tree.c index c22e30b..c138877 100644 --- a/ui-tree.c +++ b/ui-tree.c @@ -17,7 +17,7 @@ static void print_object(const unsigned char *sha1, char *path) enum object_type type; char *buf; unsigned long size, lineno, start, idx; - const char *linefmt = "<tr><td class='no'><a name='%1$d'>%1$d</a></td><td class='txt'>"; + const char *linefmt = "<tr><td class='no'><a id='n%1$d' name='n%1$d' href='#n%1$d'>%1$d</a></td><td class='txt'>"; type = sha1_object_info(sha1, &size); if (type == OBJ_BAD) { @@ -37,7 +37,7 @@ static void print_object(const unsigned char *sha1, char *path) html_attr(cgit_pageurl(cgit_query_repo, "blob", fmt("id=%s", sha1_to_hex(sha1)))); htmlf("'>%s</a>",sha1_to_hex(sha1)); - html("<table class='blob'>\n"); + html("<table summary='blob content' class='blob'>\n"); idx = 0; start = 0; lineno = 0; @@ -108,7 +108,7 @@ static int ls_item(const unsigned char *sha1, const char *base, int baselen, static void ls_head() { - html("<table class='list'>\n"); + html("<table summary='tree listing' class='list'>\n"); html("<tr class='nohover'>"); html("<th class='left'>Mode</th>"); html("<th class='left'>Name</th>"); -- cgit v1.2.3-70-g09d2