X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F03legacy_uri.t;h=efc63c9babfdd17737ec1ff49dd1007d3e050d77;hb=460b079a490cc638ecdd666c63d8edc09b7a8bcc;hp=a2722a1c73d92c1d05033f70fe6168f8509e998e;hpb=da8f4f82cede00370d1ca004c89febe033bdee93;p=catagits%2FGitalist.git diff --git a/t/03legacy_uri.t b/t/03legacy_uri.t index a2722a1..efc63c9 100644 --- a/t/03legacy_uri.t +++ b/t/03legacy_uri.t @@ -1,21 +1,44 @@ #!/usr/bin/env perl -use strict; -use warnings; -use Test::More; use FindBin qw/$Bin/; - BEGIN { - $ENV{GITALIST_CONFIG} = $Bin; - use_ok 'Catalyst::Test', 'Gitalist' + my $env = "$FindBin::Bin/../script/env"; + if (-r $env) { + do $env or die $@; + } } +use lib "$Bin/lib"; +use TestGitalist qw/request curry_test_uri done_testing ok is $TODO/; + ok( request('/')->is_success, 'Request should succeed' ); +sub test { + my ($uri, $qs) = @_; + my $request = "/$uri"; + $request =~ s{/+}{/}g; + $request .= "?$qs" if defined $qs; + my $response = request($request); + $uri = $response->header('Location') || ''; + is($response->code, 301, "ok $request 301 to " . $uri) + or return $response; + $response = request($uri); + ok($response->is_success, "ok $uri"); + return $response; +} +# FIXME # URI tests for repo1 -local *test = curry_test_uri('repo1'); +#local *test = curry_test_uri('repo1'); +test('/', 'a=project_index'); +test('/', 'a=opml'); + +no warnings 'redefine'; +local *test = curry_test_uri('repo1', \&test); +test('/', 'a=project_index'); +test('/', 'a=opml'); test('/', 'a=summary'); test('/', 'a=heads'); +test('/', 'a=tags'); test('/', 'a=blob;f=dir1/file2;h=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818'); test('/', 'a=blob;f=dir1/file2;h=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=HEAD'); @@ -46,6 +69,7 @@ test('/', 'a=blob_plain;f=file1;hb=HEAD'); test('/', 'a=blob_plain;f=file1;hb=master'); test('/', 'a=blob_plain;f=file1;hb=refs/heads/master'); + test('/', 'a=blobdiff;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hp=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818;hpb=3bc0634310b9c62222bb0e724c11ffdfb297b4ac'); test('/', 'a=blobdiff;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hp=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=3f7567c7bdf7e7ebf410926493b92d398333116e;hpb=3bc0634310b9c62222bb0e724c11ffdfb297b4ac'); test('/', 'a=blobdiff;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hp=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=HEAD;hpb=3bc0634310b9c62222bb0e724c11ffdfb297b4ac'); @@ -94,7 +118,6 @@ test('/', 'a=commitdiff_plain;h=master;hp=3f7567c7bdf7e7ebf410926493b92d39833311 test('/', 'a=commitdiff_plain;h=refs/heads/master'); test('/', 'a=commitdiff_plain;h=refs/heads/master;hp=3f7567c7bdf7e7ebf410926493b92d398333116e'); - test('/', 'a=history;f=dir1/file2;h=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818'); test('/', 'a=history;f=dir1/file2;h=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=HEAD'); test('/', 'a=history;f=dir1/file2;h=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=master'); @@ -158,19 +181,16 @@ test('/', 'a=shortlog;h=HEAD'); test('/', 'a=shortlog;h=master'); test('/', 'a=shortlog;h=refs/heads/master'); -TODO: { - local $TODO = "Action: snapshot is not yet implemented."; - test('/', 'a=snapshot;h=145dc3ef5d307be84cb9b325d70bd08aeed0eceb;sf=tgz'); - test('/', 'a=snapshot;h=36c6c6708b8360d7023e8a1649c45bcf9b3bd818;sf=tgz'); - test('/', 'a=snapshot;h=3bc0634310b9c62222bb0e724c11ffdfb297b4ac;sf=tgz'); - test('/', 'a=snapshot;h=3f7567c7bdf7e7ebf410926493b92d398333116e;sf=tgz'); - test('/', 'a=snapshot;h=729a7c3f6ba5453b42d16a43692205f67fb23bc1;sf=tgz'); - test('/', 'a=snapshot;h=82b5fee28277349b6d46beff5fdf6a7152347ba0;sf=tgz'); - test('/', 'a=snapshot;h=9062594aebb5df0de7fb92413f17a9eced196c22;sf=tgz'); - test('/', 'a=snapshot;h=HEAD;sf=tgz'); - test('/', 'a=snapshot;h=master;sf=tgz'); - test('/', 'a=snapshot;h=refs/heads/master;sf=tgz'); -} +test('/', 'a=snapshot;h=145dc3ef5d307be84cb9b325d70bd08aeed0eceb;sf=tgz'); +test('/', 'a=snapshot;h=36c6c6708b8360d7023e8a1649c45bcf9b3bd818;sf=tgz'); +test('/', 'a=snapshot;h=3bc0634310b9c62222bb0e724c11ffdfb297b4ac;sf=tgz'); +test('/', 'a=snapshot;h=3f7567c7bdf7e7ebf410926493b92d398333116e;sf=tgz'); +test('/', 'a=snapshot;h=729a7c3f6ba5453b42d16a43692205f67fb23bc1;sf=tgz'); +test('/', 'a=snapshot;h=82b5fee28277349b6d46beff5fdf6a7152347ba0;sf=tgz'); +test('/', 'a=snapshot;h=9062594aebb5df0de7fb92413f17a9eced196c22;sf=tgz'); +test('/', 'a=snapshot;h=HEAD;sf=tgz'); +test('/', 'a=snapshot;h=master;sf=tgz'); +test('/', 'a=snapshot;h=refs/heads/master;sf=tgz'); test('/', 'a=tree'); test('/', 'a=tree;f=dir1;h=729a7c3f6ba5453b42d16a43692205f67fb23bc1;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818'); @@ -201,7 +221,6 @@ test('/', 'a=tree;hb=HEAD'); test('/', 'a=tree;hb=master'); test('/', 'a=tree;hb=refs/heads/master'); - test('/', 'a=atom'); test('/', 'a=atom;f=dir1'); test('/', 'a=atom;f=dir1/file2'); @@ -232,33 +251,14 @@ test('/', 'a=rss;h=refs/heads/master'); test('/', 'a=rss;h=refs/heads/master;opt=--no-merges'); test('/', 'a=rss;opt=--no-merges'); -TODO: { - local $TODO = 'The project_index action is yet to be implemented'; - test('/', 'a=project_index'); -} -TODO: { - local $TODO = 'The opml action is yet to be implemented'; - test('/', 'a=opml'); -} -TODO: { - local $TODO = 'The tags action is yet to be implemented'; - test('/', 'a=tags'); -} +test('/', 'a=blame;f=dir1/file2;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818'); +test('/', 'a=blame;f=file1;h=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=3bc0634310b9c62222bb0e724c11ffdfb297b4ac'); +test('/', 'a=blame;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818'); +test('/', 'a=blame;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hb=3f7567c7bdf7e7ebf410926493b92d398333116e'); +test('/', 'a=blame;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hb=HEAD'); +test('/', 'a=blame;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hb=master'); +test('/', 'a=blame;f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hb=refs/heads/master'); +test('/', 'a=blame;f=file1;hb=3bc0634310b9c62222bb0e724c11ffdfb297b4ac'); +test('/', 'a=blame;f=file1;hb=3f7567c7bdf7e7ebf410926493b92d398333116e'); done_testing; - -sub test_uri { - my ($p, $uri, $qs) = @_; - $qs ||= ''; - my $request = "$uri?p=repo1;$qs"; - my $response = request($request); - ok($response->is_success, "ok $request"); -} - -sub curry_test_uri { - my $p = shift; - sub { - my ($uri, $qs) = @_; - test_uri($p, $uri, $qs); - }; -};