From: Yuval Kogman Date: Sat, 12 Apr 2008 15:45:51 +0000 (+0000) Subject: equals testing for class type constraint X-Git-Tag: 0_55~232 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=2ba16c26f3e95c1e3d605c174d78e20fe924d298;p=gitmo%2FMoose.git equals testing for class type constraint --- diff --git a/t/040_type_constraints/020_class_type_constraint.t b/t/040_type_constraints/020_class_type_constraint.t index b9f98c4..5eac4e9 100644 --- a/t/040_type_constraints/020_class_type_constraint.t +++ b/t/040_type_constraints/020_class_type_constraint.t @@ -3,7 +3,7 @@ use strict; use warnings; -use Test::More tests => 13; +use Test::More tests => 18; use Test::Exception; BEGIN { @@ -47,3 +47,11 @@ my $boop = find_type_constraint("Boop"); ok( $boop->has_message, 'Boop has a message'); my $error = $boop->get_message(Foo->new); like( $error, qr/is not a Boop/, 'boop gives correct error message'); + + +ok( $type->equals($type), "equals self" ); +ok( $type->equals(Moose::Meta::TypeConstraint::Class->new( name => "__ANON__", class => "Foo" )), "equals anon constraint of same value" ); +ok( $type->equals(Moose::Meta::TypeConstraint::Class->new( name => "Oink", class => "Foo" )), "equals differently named constraint of same value" ); +ok( !$type->equals(Moose::Meta::TypeConstraint::Class->new( name => "__ANON__", class => "Bar" )), "doesn't equal other anon constraint" ); +ok( $type->is_subtype_of(Moose::Meta::TypeConstraint::Class->new( name => "__ANON__", class => "Bar" )), "subtype of other anon constraint" ); +