Using "parameter" inside the role block is an error
[gitmo/MooseX-Role-Parameterized.git] / t / 100-erroneous-keywords.t
1 #!/usr/bin/env perl
2 use strict;
3 use warnings;
4 use Test::More tests => 5;
5
6 use Test::Exception;
7
8 do {
9     package MyRole::Storage;
10     use MooseX::Role::Parameterized;
11
12     ::throws_ok {
13         parameter()
14     } qr/^You must provide a name for the parameter/;
15
16     role {
17         ::throws_ok {
18             extends 'MyRole::Parameterized';
19         } qr/^Roles do not currently support 'extends'/;
20         ::throws_ok {
21             inner()
22         } qr/^Roles cannot support 'inner'/;
23         ::throws_ok {
24             augment()
25         } qr/^Roles cannot support 'augment'/;
26         ::throws_ok {
27             parameter()
28         } qr/^'parameter' may not be used inside of the role block/;
29     };
30 };
31
32 Moose::Meta::Class->create_anon_class(
33     roles => ['MyRole::Storage'],
34 );
35