Commit | Line | Data |
c3398f5b |
1 | #!/usr/bin/env perl |
2 | use strict; |
3 | use warnings; |
262801ef |
4 | use Test::More tests => 11; |
c3398f5b |
5 | use Test::Exception; |
6 | |
7 | require Mouse; |
8 | use lib 't/lib'; |
9 | |
262801ef |
10 | for my $method ('load_class', 'is_class_loaded') { |
11 | my $code = Mouse->can($method); |
12 | ok(!$code->(), "$method with no argument returns false"); |
13 | ok(!$code->(''), "can't load the empty class"); |
14 | ok(!$code->(\"foo"), "can't load a class name reference??"); |
15 | } |
16 | |
c3398f5b |
17 | ok(Mouse::load_class('Anti::Mouse')); |
18 | can_ok('Anti::Mouse' => 'antimouse'); |
19 | |
20 | do { |
21 | package Class; |
2a674d23 |
22 | sub yay {} |
c3398f5b |
23 | }; |
24 | |
25 | ok(Mouse::load_class('Class'), "this should not die!"); |
26 | |
2a674d23 |
27 | throws_ok { |
28 | Mouse::load_class('FakeClassOhNo'); |
29 | } qr/Can't locate /; |
c3398f5b |
30 | |
31 | throws_ok { |
32 | Mouse::load_class('Anti::MouseError'); |
33 | } qr/Missing right curly/; |
34 | |