Skip tests for strict constructor on Moose
[gitmo/Mouse.git] / t / 001_mouse / 002-subclass.t
CommitLineData
c3398f5b 1#!/usr/bin/env perl
2use strict;
3use warnings;
28e04346 4use Test::More;
c3398f5b 5use lib 't/lib';
6
28e04346 7# auto-subclass
c3398f5b 8do {
9 package Class;
10 use Mouse;
28e04346 11};
12
13can_ok(Class => 'new');
14
15my $object = Class->new;
16
17isa_ok($object => 'Class');
18isa_ok($object => 'Mouse::Object');
19
20# extends()
21do {
22 package ParentClass;
23 use Mouse;
c3398f5b 24
25 package Child;
26 use Mouse;
28e04346 27 extends 'ParentClass';
c3398f5b 28
29 package Mouse::TestClass;
30 use Mouse;
28e04346 31 extends 'Unsweetened'; # in t/lib
c3398f5b 32
33 sub mouse { 1 }
34};
35
36can_ok(Child => 'new');
37
38my $child = Child->new;
39
40isa_ok($child => 'Child');
28e04346 41isa_ok($child => 'ParentClass');
c3398f5b 42isa_ok($child => 'Mouse::Object');
43
abe28e11 44can_ok('Mouse::TestClass' => qw(mouse unsweetened));
c3398f5b 45
28e04346 46eval q{
ca73a208 47 package Child;
48 use Mouse;
28e04346 49};
ca73a208 50
28e04346 51isa_ok($child => 'ParentClass');
ca73a208 52isa_ok($child => 'Mouse::Object');
53
28e04346 54done_testing;