foo
[gitmo/Moose.git] / t / 071_misc_attribute_tests.t
CommitLineData
94b8bbb8 1#!/usr/bin/perl
2
3use strict;
4use warnings;
5
6use Test::More tests => 7;
7use Test::Exception;
8
9BEGIN {
10 use_ok('Moose');
11}
12
13## Roles
14
15{
16 package Test::TheDefaultFor::ArrayRef::and::HashRef;
17 use Moose;
18
19 has 'array_ref' => (is => 'rw', isa => 'ArrayRef');
20 has 'hash_ref' => (is => 'rw', isa => 'HashRef');
21
22}
23
24my $test = Test::TheDefaultFor::ArrayRef::and::HashRef->new;
25isa_ok($test, 'Test::TheDefaultFor::ArrayRef::and::HashRef');
26
27is_deeply($test->array_ref, [], '.... got the right default value');
28is_deeply($test->hash_ref, {}, '.... got the right default value');
29
30my $test2 = Test::TheDefaultFor::ArrayRef::and::HashRef->new(
31 array_ref => [ 1, 2, [] ],
32 hash_ref => { one => 1, two => 2, three => {} },
33);
34isa_ok($test2, 'Test::TheDefaultFor::ArrayRef::and::HashRef');
35
36is_deeply($test2->array_ref, [ 1, 2, [] ], '.... got the right default value');
37is_deeply($test2->hash_ref, { one => 1, two => 2, three => {} }, '.... got the right default value');