Skip to content

Commit

Permalink
Type::Tiny::Duck cmp tests
Browse files Browse the repository at this point in the history
  • Loading branch information
tobyink committed Aug 11, 2018
1 parent 8cff61f commit 1d247b7
Showing 1 changed file with 41 additions and 0 deletions.
41 changes: 41 additions & 0 deletions t/20-unit/Type-Tiny-Duck/cmp.t
@@ -0,0 +1,41 @@
=pod
=encoding utf-8
=head1 PURPOSE
Test new type comparison stuff with Type::Tiny::Duck objects.
=head1 AUTHOR
Toby Inkster E<lt>tobyink@cpan.orgE<gt>.
=head1 COPYRIGHT AND LICENCE
This software is copyright (c) 2018 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut

use strict;
use warnings;
use lib qw( ./lib ./t/lib ../inc ./inc );

use Test::More;
use Test::TypeTiny;
use Type::Utils qw(duck_type);

my $type1 = duck_type Type1 => [qw( foo bar )];
my $type2 = duck_type Type2 => [qw( bar foo )];
my $type3 = duck_type Type3 => [qw( foo bar baz )];

ok_subtype($type1 => $type2, $type3);
ok_subtype($type2 => $type1, $type3);
ok($type1->equals($type2));
ok($type2->equals($type1));
ok($type3->is_subtype_of($type2));
ok($type2->is_supertype_of($type3));

done_testing;

0 comments on commit 1d247b7

Please sign in to comment.