---
name: "Test2::Compare::Object"
section: "3p"
platform: "openbsd"
package: "man"
version: "8.0-current-20261101"
release: "OpenBSD 8.0-current (2026-11-01)"
platforms: ["openbsd"]
url: "https://new.carta.tech/Test2::Compare::Object"
---

# Test2::Compare::Object(3p)

Representation of an object during deep comparison.

## 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/test-more/*.

## MAINTAINERS

- Chad Granum \<exodist@cpan.org\>

  ## AUTHORS

- Chad Granum \<exodist@cpan.org\>

  ## COPYRIGHT

Copyright 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/*
