Test::Moose3pm
Test functions for moose specific features
Usage
use Test::More plan => 1;use Test::Moose;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");
Version
version 2.4001
Overview
This module provides some useful test functions for Moose based classes. It is an experimental first release, so comments and suggestions are very welcome.
Exported functions
meta_ok ($class_or_object)
Tests if a class or object has a metaclass.
does_ok ($class_or_object, $role, ?$message)
Tests if a class or object does a certain role, similar to what "isa_ok" does for the "isa" method.
has_attribute_ok($class_or_object, $attr_name, ?$message)
Tests if a class or object has a certain attribute, similar to what "can_ok" does for the methods.
with_immutable { CODE } @class_names
Runs CODE (which should contain normal tests) twice, and make each class in @class_names immutable in between the two runs.
The CODE block is called with a single boolean argument indicating whether or not the classes have been made immutable yet.
Todo
- Convert the Moose test suite to use this module.
- Here is a list of possible functions to write
-
- immutability predicates
- anon-class predicates
- discovering original method from modified method
- attribute metaclass predicates (attribute_isa?)
Copyright and license
This software is copyright (c) 2006 by Infinity Interactive, Inc.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Releases
10 releases since Debian 5.0 (Lenny); the text changed 9 times.