Start fixing the tests
Tomas Doran [Mon, 18 Jan 2010 22:53:38 +0000 (22:53 +0000)]
lib/Gitalist/Controller/OPML.pm
t/01app.t

index 3540614..bd7670f 100644 (file)
@@ -20,7 +20,7 @@ sub opml : Chained('/base') Args(0) {
     for my $repos ( $c->model()->repositories->flatten ) {
         $opml->insert_outline(
             text   => $repos->name. ' - '. $repos->description,
-            xmlUrl => $c->uri_for_action('/repository/rss', [$repos->name]),
+            xmlUrl => $c->uri_for_action('/repository/rss', [$repos->name])->as_string,
         );
     }
 
index 2ed2537..256c2ed 100644 (file)
--- a/t/01app.t
+++ b/t/01app.t
@@ -12,16 +12,17 @@ BEGIN {
 
 ok( request('/')->is_success, 'Request should succeed' );
 
-for my $p (qw/ repo1 nodescription /) {
-    my $path = '/summary?p=' . $p;
+for my $p (qw/ repo1 nodescription bare.git opml /) {
+    my $path = '/' . $p;
     ok( request($path)->is_success, "$path should succeed");
 }
 
-my $response = request('/summary?p=DoesNotExist');
+my $response = request('/DoesNotExist');
 is $response->code, 404, 'invalid repository 404s';
 like $response->content, qr/Page not found/, 'invalid repository handled correctly';
 
-is request('/summary?p=../../../')->code, 404, 'directory traversal failed';
+is request('/../../../')->code, 404, 'directory traversal failed';
+is request('/..%2F..%2F../')->code, 404, 'directory traversal failed';
 
 {
   # URI tests for repo1