simplify more stuff
[gitmo/Class-MOP.git] / t / 072_immutable_w_constructors.t
index abed7a7..cb95e20 100644 (file)
@@ -1,11 +1,11 @@
 use strict;
 use warnings;
 
-use Test::More tests => 91;
-use Test::Exception;
+use Test::More;
+use Test::Fatal;
+
+use Class::MOP;
 
-BEGIN {use Class::MOP;use Class::MOP::Immutable;
-}
 
 {
     package Foo;
@@ -81,12 +81,12 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
 
     ok(!$meta->is_immutable, '... our class is not immutable');
 
-    lives_ok {
+    is( exception {
         $meta->make_immutable(
             inline_constructor => 1,
             inline_accessors   => 0,
         );
-    } '... changed Foo to be immutable';
+    }, undef, '... changed Foo to be immutable' );
 
     ok($meta->is_immutable, '... our class is now immutable');
     isa_ok($meta, 'Class::MOP::Class');
@@ -146,12 +146,12 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
 
     ok(!$meta->is_immutable, '... our class is not immutable');
 
-    lives_ok {
+    is( exception {
         $meta->make_immutable(
             inline_constructor => 1,
             inline_accessors   => 1,
         );
-    } '... changed Bar to be immutable';
+    }, undef, '... changed Bar to be immutable' );
 
     ok($meta->is_immutable, '... our class is now immutable');
     isa_ok($meta, 'Class::MOP::Class');
@@ -215,12 +215,12 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
 
     ok(!$meta->is_immutable, '... our class is not immutable');
 
-    lives_ok {
+    is( exception {
         $meta->make_immutable(
             inline_constructor => 0,
             inline_accessors   => 1,
         );
-    } '... changed Bar to be immutable';
+    }, undef, '... changed Bar to be immutable' );
 
     ok($meta->is_immutable, '... our class is now immutable');
     isa_ok($meta, 'Class::MOP::Class');
@@ -228,14 +228,14 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
     ok(!Baz->meta->has_method('new'), '... no constructor was made');
 
     {
-        my $baz = Baz->meta->construct_instance;
+        my $baz = Baz->meta->new_object;
         isa_ok($baz, 'Bar');
         is($baz->bar, 'BAR', '... got the right default value');
         is($baz->baz, 'BAZ', '... got the right default value');
     }
 
     {
-        my $baz = Baz->meta->construct_instance(bar => 'BAZ!', baz => 'BAR!', bah => 'BAH!');
+        my $baz = Baz->meta->new_object(bar => 'BAZ!', baz => 'BAR!', bah => 'BAH!');
         isa_ok($baz, 'Baz');
         is($baz->bar, 'BAZ!', '... got the right parameter value');
         is($baz->baz, 'BAR!', '... got the right parameter value');
@@ -267,7 +267,7 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
 
 {
   my $buzz;
-  ::lives_ok { $buzz = Buzz->meta->new_object } '...Buzz instantiated successfully';
+  ::is( ::exception { $buzz = Buzz->meta->new_object }, undef, '...Buzz instantiated successfully' );
   ::ok(!$buzz->has_bar, '...bar is not set');
   ::is($buzz->bar, undef, '...bar returns undef');
   ::ok(!$buzz->has_bar, '...bar was not autovivified');
@@ -279,7 +279,7 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
   ::ok(!$buzz->has_bar, '...bar is no longerset');
 
   my $buzz2;
-  ::lives_ok { $buzz2 = Buzz->meta->new_object('bar' => undef) } '...Buzz instantiated successfully';
+  ::is( ::exception { $buzz2 = Buzz->meta->new_object('bar' => undef) }, undef, '...Buzz instantiated successfully' );
   ::ok($buzz2->has_bar, '...bar is set');
   ::is($buzz2->bar, undef, '...bar is undef');
 
@@ -287,13 +287,15 @@ BEGIN {use Class::MOP;use Class::MOP::Immutable;
 
 {
   my $buzz;
-  ::lives_ok { $buzz = Buzz->meta->new_object } '...Buzz instantiated successfully';
+  ::is( ::exception { $buzz = Buzz->meta->new_object }, undef, '...Buzz instantiated successfully' );
   ::ok($buzz->has_bah, '...bah is set');
   ::is($buzz->bah, 'BAH', '...bah returns "BAH"' );
 
   my $buzz2;
-  ::lives_ok { $buzz2 = Buzz->meta->new_object('bah' => undef) } '...Buzz instantiated successfully';
+  ::is( ::exception { $buzz2 = Buzz->meta->new_object('bah' => undef) }, undef, '...Buzz instantiated successfully' );
   ::ok($buzz2->has_bah, '...bah is set');
   ::is($buzz2->bah, undef, '...bah is undef');
 
 }
+
+done_testing;