explicitly test that shift returns undef and does not die on an empty array
[gitmo/Moose.git] / t / 020_attributes / 034_bad_coerce.t
index 10d234b..3d99f89 100644 (file)
@@ -1,23 +1,34 @@
-#!/usr/bin/perl
-
 use strict;
 use warnings;
 
 use Test::More;
-use Test::Exception;
+
+use Test::Requires {
+    'Test::Output' => '0.01', # skip all if not installed
+};
 
 {
     package Foo;
 
     use Moose;
 
-    ::throws_ok{ has foo => (
+    ::stderr_like{ has foo => (
             is     => 'ro',
             isa    => 'Str',
             coerce => 1,
         );
-        } qr/\QYou cannot coerce an attribute (foo) unless its type has a coercion/,
+        }
+        qr/\QYou cannot coerce an attribute (foo) unless its type (Str) has a coercion/,
         'Cannot coerce unless the type has a coercion';
+
+    ::stderr_like{ has bar => (
+            is     => 'ro',
+            isa    => 'Str',
+            coerce => 1,
+        );
+        }
+        qr/\QYou cannot coerce an attribute (bar) unless its type (Str) has a coercion/,
+        'Cannot coerce unless the type has a coercion - different attribute';
 }
 
 done_testing;