docs for CMOP::Instance
[gitmo/Class-MOP.git] / t / 014_attribute_introspection.t
index 9eb1603..84fd2fd 100644 (file)
@@ -1,14 +1,10 @@
-#!/usr/bin/perl
-
 use strict;
 use warnings;
 
-use Test::More tests => 56;
+use Test::More tests => 65;
 use Test::Exception;
 
-BEGIN {
-    use_ok('Class::MOP');
-}
+use Class::MOP;
 
 {
     my $attr = Class::MOP::Attribute->new('$test');
@@ -20,29 +16,37 @@ BEGIN {
     isa_ok($meta, 'Class::MOP::Class');
 
     my @methods = qw(
-        meta
-        new clone
+        new
+        clone
 
         initialize_instance_slot
+        _set_initial_slot_value
 
         name
-        has_accessor  accessor
-        has_writer    writer     get_write_method get_write_method_ref
-        has_reader    reader     get_read_method  get_read_method_ref
-        has_predicate predicate
-        has_clearer   clearer
-        has_builder   builder
-        has_init_arg  init_arg
-        has_default   default    is_default_a_coderef
+        has_accessor      accessor
+        has_writer        writer
+        has_write_method  get_write_method  get_write_method_ref
+        has_reader        reader
+        has_read_method   get_read_method   get_read_method_ref
+        has_predicate     predicate
+        has_clearer       clearer
+        has_builder       builder
+        has_init_arg      init_arg
+        has_default       default           is_default_a_coderef
+        has_initializer   initializer
+
+        definition_context
 
         slots
         get_value
         set_value
+        set_initial_value
         has_value
         clear_value
 
         associated_class
-        attach_to_class detach_from_class
+        attach_to_class
+        detach_from_class
 
         accessor_metaclass
 
@@ -50,8 +54,11 @@ BEGIN {
         associate_method
 
         process_accessors
+        _process_accessors
         install_accessors
         remove_accessors
+
+        _new
         );
 
     is_deeply(
@@ -64,17 +71,19 @@ BEGIN {
     }
 
     my @attributes = (
-        '$!name',
-        '$!accessor',
-        '$!reader',
-        '$!writer',
-        '$!predicate',
-        '$!clearer',
-        '$!builder',
-        '$!init_arg',
-        '$!default',
-        '$!associated_class',
-        '@!associated_methods',
+        'name',
+        'accessor',
+        'reader',
+        'writer',
+        'predicate',
+        'clearer',
+        'builder',
+        'init_arg',
+        'initializer',
+        'definition_context',
+        'default',
+        'associated_class',
+        'associated_methods',
     );
 
     is_deeply(