* s/can_role/does_role/g.
[gitmo/Moose.git] / t / 400_moose_util.t
CommitLineData
adf82331 1#!/usr/bin/env perl
2
3use Test::More tests => 9;
4
5use strict;
6use warnings;
7
8BEGIN {
9 use_ok('Moose');
10 use_ok('Moose::Role');
11 use_ok('Moose::Util');
12}
13
14{
15 package Foo;
16
17 use Moose::Role;
18}
19
20{
21 package Bar;
22
23 use Moose;
24
25 with qw/Foo/;
26}
27
28{
29 package Baz;
30
31 use Moose;
32}
33
34# Classes
35
36ok(Moose::Util::does_role('Bar', 'Foo'));
37
38ok(! Moose::Util::does_role('Baz', 'Foo'));
39
40# Objects
41
42my $bar = Bar->new;
43
44ok(Moose::Util::does_role($bar, 'Foo'));
45
46my $baz = Baz->new;
47
48ok(! Moose::Util::does_role($baz, 'Foo'));
49
50# Invalid values
51
52ok(! Moose::Util::does_role(undef,'Foo'));
53
54ok(! Moose::Util::does_role(1,'Foo'));
55