getting ready for a 0.07 release
[gitmo/Class-MOP.git] / t / 030_method.t
CommitLineData
cbd9f942 1#!/usr/bin/perl
2
3use strict;
4use warnings;
5
22286063 6use Test::More tests => 9;
cbd9f942 7use Test::Exception;
8
9BEGIN {
727919c5 10 use_ok('Class::MOP');
cbd9f942 11 use_ok('Class::MOP::Method');
12}
13
22286063 14{
15 my $method = Class::MOP::Method->wrap(sub { 1 });
16 is($method->meta, Class::MOP::Method->meta, '... instance and class both lead to the same meta');
17}
18
cbd9f942 19my $meta = Class::MOP::Method->meta;
20isa_ok($meta, 'Class::MOP::Class');
21
22
23{
24 my $meta = Class::MOP::Method->meta();
25 isa_ok($meta, 'Class::MOP::Class');
26
27 foreach my $method_name (qw(
cbd9f942 28 wrap
29 )) {
30 ok($meta->has_method($method_name), '... Class::MOP::Method->has_method(' . $method_name . ')');
31 }
32}
33
34dies_ok {
35 Class::MOP::Method->wrap()
36} '... bad args for &wrap';
37
38dies_ok {
39 Class::MOP::Method->wrap('Fail')
40} '... bad args for &wrap';
41
42dies_ok {
43 Class::MOP::Method->wrap([])
44} '... bad args for &wrap';