Provided by: libtest2-suite-perl_0.000102-1_all
NAME
Test2::Compare::Object - Representation of an object during deep comparison.
DESCRIPTION
This class lets you specify an expected object in a deep comparison. You can check the fields/elements of the underlying reference, call methods to verify results, and do meta checks for object type and ref type.
METHODS
$class = $obj->meta_class The meta-class to be used when checking the object type. This is mainly listed because it is useful to override for specialized object subclasses. This normally just returns Test2::Compare::Meta. $class = $obj->object_base The base-class to be expected when checking the object type. This is mainly listed because it is useful to override for specialized object subclasses. This normally just returns 'UNIVERSAL'. $obj->add_prop(...) Add a meta-property to check, see Test2::Compare::Meta. This method just delegates. $obj->add_field(...) Add a hash-field to check, see Test2::Compare::Hash. This method just delegates. $obj->add_item(...) Add an array item to check, see Test2::Compare::Array. This method just delegates. $obj->add_call($method, $check) $obj->add_call($method, $check, $name) $obj->add_call($method, $check, $name, $context) Add a method call check. This will call the specified method on your object and verify the result. $method may be a method name, an array ref, or a coderef. If it's an arrayref, the first element must be the method name, and the rest are arguments that will be passed to it. In the case of a coderef it can be helpful to provide an alternate name. When no name is provided the name is either $method or the string '\&CODE'. If $context is 'list', the method will be invoked in list context, and the result will be an arrayref. If $context is 'hash', the method will be invoked in list context, and the result will be a hashref (this will warn if the method returns an odd number of values).
SOURCE
The source code repository for Test2-Suite can be found at https://github.com/Test-More/Test2-Suite/.
MAINTAINERS
Chad Granum <exodist@cpan.org>
AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Copyright 2017 Chad Granum <exodist@cpan.org>. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://dev.perl.org/licenses/