Make test less noisy by removing -Debug and cleaning up wide charin print errors
Ash Berlin [Mon, 2 Feb 2009 21:54:36 +0000 (21:54 +0000)]
svn.authors [new file with mode: 0644]
t/lib/Catty.pm
t/lib/CattySession.pm
t/simple.t

diff --git a/svn.authors b/svn.authors
new file mode 100644 (file)
index 0000000..c6b7137
--- /dev/null
@@ -0,0 +1 @@
+ashb = Ash Berlin <ash_github@firemirror.com>
index cdd1405..9d3e043 100644 (file)
@@ -3,9 +3,10 @@ package Catty;
 use strict;
 
 #use Catalyst;
-use Catalyst qw/-Debug/;
+use Catalyst;
 use Cwd;
 use MIME::Base64;
+use Encode qw//;
 
 our $VERSION = '0.01';
 
@@ -13,8 +14,8 @@ Catty->config(
     name => 'Catty',
     root => cwd . '/t/root',
 );
-
 Catty->setup();
+Catty->log->levels(undef);
 
 sub default : Private {
     my ( $self, $context ) = @_;
@@ -25,7 +26,8 @@ sub default : Private {
 
 sub hello : Global {
     my ( $self, $context ) = @_;
-    my $html = html( "Hello", "Hi there! ☺" );
+    my $str = Encode::encode('utf-8', "\x{263A}"); # ☺
+    my $html = html( "Hello", "Hi there! $str" );
     $context->response->content_type("text/html; charset=utf-8");
     $context->response->output($html);
 }
index db1a4f5..9d3138c 100644 (file)
@@ -3,7 +3,7 @@ package CattySession;
 use strict;
 
 #use Catalyst;
-use Catalyst qw/-Debug
+use Catalyst qw/
     Session
     Session::State::Cookie
     Session::Store::Dummy
index 8433a40..21e059b 100644 (file)
@@ -1,9 +1,9 @@
-#!perl -T
+#!perl
 use strict;
 use warnings;
 use lib 'lib';
 use Encode qw();
-use Test::More tests => 39;
+use Test::More tests => 37;
 use lib 't/lib';
 use Test::WWW::Mechanize::Catalyst 'Catty';
 
@@ -20,7 +20,9 @@ $m->follow_link_ok( { text => 'Hello' } );
 is( $m->base, "http://localhost/hello/" );
 is( $m->ct,   "text/html" );
 $m->title_is("Hello");
-$m->content_contains( Encode::decode( 'utf-8', "Hi there! ☺" ) );
+my $bytes = "Hi there! ☺";
+my $chars = Encode::decode( 'utf-8', $bytes );
+$m->content_contains( $chars, qq{content contains "$bytes"});
 
 #use Devel::Peek; Dump $m->content;
 #Dump(Encode::decode('utf-8', "Hi there! ☺"));
@@ -39,7 +41,7 @@ $m->content_contains("This is the root page");
 $m->get_ok("/hello/");
 is( $m->ct, "text/html" );
 $m->title_is("Hello");
-$m->content_contains( Encode::decode( 'utf-8', "Hi there! ☺" ) );
+$m->content_contains( $chars, qq{content contains "$bytes"});
 
 SKIP: {
     eval { require Compress::Zlib; };
@@ -47,27 +49,28 @@ SKIP: {
     $m->get_ok("/gzipped/");
     is( $m->ct, "text/html" );
     $m->title_is("Hello");
-    $m->content_contains( Encode::decode( 'utf-8', "Hi there! ☺" ) );
+    $m->content_contains( $chars, qq{content contains "$bytes"});
 }
 
 $m->get("$root/die/");
 is( $m->status, 500 );
-is( $m->ct,     "" );
-$m->title_is(undef);
-$m->content_is("");
+$m->content_like( qr!\(en\) Please come back later!);
+$m->content_unlike( qr!<a href="/hello/">Hello</a>.!);
 
 $m->get("/die/");
 is( $m->status, 500 );
-is( $m->ct,     "" );
-$m->title_is(undef);
-$m->content_is("");
-
-$m->{catalyst_debug} = 1;
-$m->get("$root/die/");
-is( $m->status, 500 );
-is( $m->ct,     "text/html" );
-$m->title_like(qr/Catty on Catalyst/);
-$m->content_like(qr/Caught exception in Catty/);
-$m->content_like(qr/erk/);
-$m->content_like(qr/This is the die page/);
+$m->content_like( qr!\(en\) Please come back later!);
+$m->content_unlike( qr!<a href="/hello/">Hello</a>.!);
 
+{
+  no warnings 'redefine';
+  ${Catty::}{debug} = sub { 1 };
+  $m->{catalyst_debug} = 1;
+  $m->get("$root/die/");
+  is( $m->status, 500 );
+  is( $m->ct,     "text/html" );
+  $m->title_like(qr/Catty on Catalyst/);
+  $m->content_like(qr/Caught exception in Catty/);
+  $m->content_like(qr/erk/);
+  $m->content_like(qr/This is the die page/);
+}