testing for methods_provided_by
Graham Knop [Tue, 4 Mar 2014 02:45:44 +0000 (21:45 -0500)]
t/concrete-methods.t

index 6e7a695..4fc0601 100644 (file)
@@ -27,8 +27,16 @@ my $role_methods = Role::Tiny->_concrete_methods_of('MyRole1');
 is_deeply([sort keys %$role_methods], ['after_role'],
   'only subs after Role::Tiny import are methods' );
 
+my @role_method_list = Role::Tiny->methods_provided_by('MyRole1');
+is_deeply(\@role_method_list, ['after_role'],
+  'methods_provided_by gives method list' );
+
 my $class_methods = Role::Tiny->_concrete_methods_of('MyClass1');
 is_deeply([sort keys %$class_methods], ['method'],
   'only subs from non-Role::Tiny packages are methods' );
 
+like exception { Role::Tiny->methods_provided_by('MyClass1') },
+  qr/is not a Role::Tiny/,
+  'methods_provided_by refuses to work on classes';
+
 done_testing;