1#!/usr/bin/perl -w 2 3use strict; 4 5use Params::Validate qw(validate); 6use Test::More tests => 2; 7 8{ 9 package Overloaded; 10 11 use overload 'bool' => sub { 0 }; 12 13 sub new { bless {} } 14 15 sub foo { 1 } 16} 17 18my $ovl = Overloaded->new; 19 20{ 21 eval 22 { 23 my @p = ( object => $ovl ); 24 validate( @p, { object => { isa => 'Overloaded' } } ); 25 }; 26 27 is( $@, q{}, 'overloaded object->isa' ); 28} 29 30{ 31 eval 32 { 33 my @p = ( object => $ovl ); 34 validate( @p, { object => { can => 'foo' } } ); 35 }; 36 37 is( $@, q{}, 'overloaded object->foo' ); 38} 39