X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=lib%2FTest%2FMouse.pm;fp=lib%2FTest%2FMouse.pm;h=0000000000000000000000000000000000000000;hp=63487469c31e750482fe7df7bd2c1e5cea6e094f;hb=08f7a8dbc5e48fcece4396a500d37bb2c6e45b74;hpb=3c429663cc970c2f17a5d1a5f64b4694ce3eb7b0 diff --git a/lib/Test/Mouse.pm b/lib/Test/Mouse.pm deleted file mode 100755 index 6348746..0000000 --- a/lib/Test/Mouse.pm +++ /dev/null @@ -1,75 +0,0 @@ -package Test::Mouse; - -use strict; -use warnings; -use Mouse (); - -use base qw(Test::Builder::Module); - -our @EXPORT = qw(meta_ok does_ok has_attribute_ok); - -sub find_meta{ Mouse::class_of($class_or_obj) } - -sub meta_ok ($;$) { - my ($class_or_obj, $message) = @_; - - $message ||= "The object has a meta"; - - if (find_meta($class_or_obj)) { - return __PACKAGE__->builder->ok(1, $message) - } - else { - return __PACKAGE__->builder->ok(0, $message); - } -} - -sub does_ok ($$;$) { - my ($class_or_obj, $does, $message) = @_; - - $message ||= "The object does $does"; - - my $meta = find_meta($class_or_obj); - if ($meta && $meta->does_role($does)) { - return __PACKAGE__->builder->ok(1, $message) - } - else { - return __PACKAGE__->builder->ok(0, $message); - } -} - -sub has_attribute_ok ($$;$) { - my ($class_or_obj, $attr_name, $message) = @_; - - $message ||= "The object does has an attribute named $attr_name"; - - my $meta = find_meta($class_or_obj); - - if ($meta->find_attribute_by_name($attr_name)) { - return __PACKAGE__->builder->ok(1, $message) - } - else { - return __PACKAGE__->builder->ok(0, $message); - } -} - -1; - -__END__ - -=pod - -=head1 NAME - -Test::Mouse - Test functions for Mouse specific features - -=head1 SYNOPSIS - - use Test::More plan => 1; - use Test::Mouse; - - meta_ok($class_or_obj, "... Foo has a ->meta"); - does_ok($class_or_obj, $role, "... Foo does the Baz role"); - has_attribute_ok($class_or_obj, $attr_name, "... Foo has the 'bar' attribute"); - -=cut -