Make TestGitalist do all of the boilerplate crap..
Tomas Doran [Sat, 23 Jan 2010 14:40:14 +0000 (14:40 +0000)]
t/01app.t
t/03legacy_uri.t
t/atom.t
t/lib/TestGitalist.pm
t/opml.t
t/rss.t

index e58506a..d7eb640 100644 (file)
--- a/t/01app.t
+++ b/t/01app.t
@@ -1,15 +1,6 @@
 #!/usr/bin/env perl
-use strict;
-use warnings;
-use Test::More;
 use FindBin qw/$Bin/;
 use lib "$Bin/lib";
-
-BEGIN {
-    $ENV{GITALIST_CONFIG} = $Bin;
-    $ENV{GITALIST_REPO_DIR} = '';
-    use_ok 'Catalyst::Test', 'Gitalist';
-}
 use TestGitalist;
 
 for my $p ('', qw{
index 1273bfb..df7ffde 100644 (file)
@@ -1,17 +1,6 @@
 #!/usr/bin/env perl
-use strict;
-use warnings;
-use Test::More;
 use FindBin qw/$Bin/;
 use lib "$Bin/lib";
-
-BEGIN {
-    $ENV{GITALIST_CONFIG} = $Bin;
-    no warnings;
-    $ENV{GITALIST_REPO_DIR} = undef;
-    use warnings;
-    use_ok 'Catalyst::Test', 'Gitalist';
-}
 use TestGitalist;
 
 ok( request('/')->is_success, 'Request should succeed' );
index 1964d2c..1d7abc2 100644 (file)
--- a/t/atom.t
+++ b/t/atom.t
@@ -1,14 +1,7 @@
 #!/usr/bin/env perl
-use strict;
-use warnings;
-use Test::More;
 use FindBin qw/$Bin/;
-
-BEGIN {
-    $ENV{GITALIST_CONFIG} = $Bin;
-    $ENV{GITALIST_REPO_DIR} = '';
-    use_ok 'Catalyst::Test', 'Gitalist';
-}
+use lib "$Bin/lib";
+use TestGitalist;
 
 my $res = request('/repo1/atom');
 ok $res->is_success;
index aceda2b..05a2064 100644 (file)
@@ -1,15 +1,36 @@
 package TestGitalist;
 use strict;
 use warnings;
-use Exporter qw/import/;
+use Exporter ();
+use FindBin qw/$Bin/;
+BEGIN {
+    $ENV{GITALIST_CONFIG} = $Bin;
+    $ENV{GITALIST_REPO_DIR} = '';
+}
 use Catalyst::Test qw/Gitalist/;
 use Test::More;
+use Test::Exception;
 
-our @EXPORT = qw/
+our @EXPORT = (@Test::More::EXPORT, @Test::Exception::EXPORT, qw/
     test_uri
     curry_test_uri
     MECH
-/;
+    request
+    get
+    ctx_request
+    content_like
+    action_ok
+    action_redirect
+    action_notfound
+    contenttype_is
+/);
+
+sub import {
+    my $into = caller();
+    strict->import;
+    warnings->import;
+    goto \&Exporter::import;
+}
 
 use constant ();
 BEGIN {
@@ -17,9 +38,9 @@ BEGIN {
         require Test::WWW::Mechanize::Catalyst;
         require WWW::Mechanize::TreeBuilder;
         my $mech = Test::WWW::Mechanize::Catalyst->new(catalyst_app => 'Gitalist');
-        WWW::Mechanize::TreeBuilder->meta->apply($mech, {
+        WWW::Mechanize::TreeBuilder->meta->apply($mech,
            tree_class => 'HTML::TreeBuilder::XPath',
-        } );
+        );
         return $mech;
     };
     constant->import('MECH', $mech );
index ee94c85..a3ea5c6 100644 (file)
--- a/t/opml.t
+++ b/t/opml.t
@@ -1,14 +1,7 @@
 #!/usr/bin/env perl
-use strict;
-use warnings;
-use Test::More;
 use FindBin qw/$Bin/;
-
-BEGIN {
-    $ENV{GITALIST_CONFIG} = $Bin;
-    $ENV{GITALIST_REPO_DIR} = '';
-    use_ok 'Catalyst::Test', 'Gitalist';
-}
+use lib "$Bin/lib";
+use TestGitalist;
 
 my $res = request('/opml');
 ok $res->is_success;
diff --git a/t/rss.t b/t/rss.t
index e603c08..ec87a51 100644 (file)
--- a/t/rss.t
+++ b/t/rss.t
@@ -1,14 +1,7 @@
 #!/usr/bin/env perl
-use strict;
-use warnings;
-use Test::More;
 use FindBin qw/$Bin/;
-
-BEGIN {
-    $ENV{GITALIST_CONFIG} = $Bin;
-    $ENV{GITALIST_REPO_DIR} = '';
-    use_ok 'Catalyst::Test', 'Gitalist';
-}
+use lib "$Bin/lib";
+use TestGitalist;
 
 my $res = request('/repo1/rss');
 ok $res->is_success;