Moose role class has ->meta in method_list since 0.90, update for that
[gitmo/Mouse.git] / t / 100-meta-class.t
index 66ffb9d..264a81e 100644 (file)
@@ -1,7 +1,7 @@
 #!/usr/bin/env perl
 use strict;
 use warnings;
-use Test::More tests => 12;
+use Test::More tests => 15;
 
 do {
     package Class;
@@ -16,22 +16,28 @@ do {
 };
 
 my $meta = Class->meta;
-isa_ok($meta, 'Mouse::Class');
+isa_ok($meta, 'Mouse::Meta::Class');
 
 is_deeply([$meta->superclasses], ['Mouse::Object'], "correctly inherting from Mouse::Object");
 
 my $meta2 = Class->meta;
 is($meta, $meta2, "same metaclass instance");
 
-can_ok($meta, 'name', 'get_attribute_map');
+can_ok($meta, 'name', 'get_attribute_map', 'get_attribute_list');
 
+ok($meta->has_attribute('pawn'));
 my $attr = $meta->get_attribute('pawn');
-isa_ok($attr, 'Mouse::Attribute');
+isa_ok($attr, 'Mouse::Meta::Attribute');
 is($attr->name, 'pawn', 'got the correct attribute');
 
 my $map = $meta->get_attribute_map;
 is_deeply($map, { pawn => $attr }, "attribute map");
 
+my $list = [$meta->get_attribute_list];
+is_deeply($list, [ 'pawn' ], "attribute list");
+
+ok(!$meta->has_attribute('nonexistent_attribute'));
+
 eval "
     package Class;
     use Mouse;
@@ -50,7 +56,7 @@ do {
 };
 
 my $child_meta = Child->meta;
-isa_ok($child_meta, 'Mouse::Class');
+isa_ok($child_meta, 'Mouse::Meta::Class');
 
 isnt($meta, $child_meta, "different metaclass instances for the two classes");