diff options
author | Jesse Luehrs <doy@tozt.net> | 2009-08-28 22:27:06 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2009-08-28 22:27:06 -0500 |
commit | b55abfc680e335f49c9d7441cecefaff588356fb (patch) | |
tree | 3a553bd5d94663ca96fcd8db1d8c78de7205aedd | |
parent | bd37463d062cd735827eefaacdf09f60f26f9985 (diff) | |
download | moosex-abc-b55abfc680e335f49c9d7441cecefaff588356fb.tar.gz moosex-abc-b55abfc680e335f49c9d7441cecefaff588356fb.zip |
add test for creating an abstract subclass of an abstract class
-rw-r--r-- | t/004-abstract-subclass.t | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/t/004-abstract-subclass.t b/t/004-abstract-subclass.t new file mode 100644 index 0000000..3f57b59 --- /dev/null +++ b/t/004-abstract-subclass.t @@ -0,0 +1,33 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More tests => 3; +use Test::Exception; + +package Foo; +use Moose; +use MooseX::ABC; + +requires 'foo'; +requires 'bar'; + +package Foo::Sub; +use Moose; +use MooseX::ABC; +requires 'foo'; +extends 'Foo'; + +sub bar { 'BAR' } + +package Foo::Sub::Sub; +use Moose; +extends 'Foo::Sub'; + +sub foo { 'FOO' } + +package main; + +dies_ok { Foo->new } "can't create Foo objects"; +dies_ok { Foo::Sub->new } "can't create Foo::Sub objects"; +my $foo = Foo::Sub::Sub->new; +is($foo->foo, 'FOO', 'successfully created a Foo::Sub::Sub object'); |