summaryrefslogtreecommitdiffstats
path: root/t/04-abstract-subclass.t
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2010-07-18 23:58:56 -0500
committerJesse Luehrs <doy@tozt.net>2010-07-19 00:03:12 -0500
commitcb170931288a0dbef03fece2a0fa01decbd5dfbb (patch)
treeabf1e0c128bdb1932b6cd7d33a44a7d45511d951 /t/04-abstract-subclass.t
parent2f257268ef4fe266b0b24bf182242961cfd85ce2 (diff)
downloadmoosex-abc-cb170931288a0dbef03fece2a0fa01decbd5dfbb.tar.gz
moosex-abc-cb170931288a0dbef03fece2a0fa01decbd5dfbb.zip
update dzil stuff0.05
Diffstat (limited to 't/04-abstract-subclass.t')
-rw-r--r--t/04-abstract-subclass.t35
1 files changed, 35 insertions, 0 deletions
diff --git a/t/04-abstract-subclass.t b/t/04-abstract-subclass.t
new file mode 100644
index 0000000..3542d07
--- /dev/null
+++ b/t/04-abstract-subclass.t
@@ -0,0 +1,35 @@
+#!/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;
+extends 'Foo';
+
+requires 'baz';
+
+sub bar { 'BAR' }
+
+package Foo::Sub::Sub;
+use Moose;
+extends 'Foo::Sub';
+
+sub foo { 'FOO' }
+sub baz { 'BAZ' }
+
+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');