Add the following packages libalgorithm-diff-perl libspiffy-perl libtext-diff-perl...
[pkg-perl] / deb-src / libspiffy-perl / libspiffy-perl-0.30 / t / mixin.t
1 use lib 't', 'lib';
2 use strict;
3 no strict 'refs';
4 use warnings;
5
6 package A;
7 use Spiffy -base;
8 field 'foo' => 17;
9
10 package X;
11 sub extra {99}
12
13 package BB;
14 use base 'X';
15 sub xxx {42}
16 sub yyy {}
17 sub _zzz {}
18
19 package C;
20 use base 'A';
21 use mixin 'BB';
22
23 package main;
24 use Test::More tests => 10;
25
26 my $c = C->new;
27 ok($c->can('foo'));
28 is($c->foo, 17);
29 ok($c->can('extra'));
30 is($c->extra, 99);
31 ok($c->can('xxx'));
32 is($c->xxx, 42);
33 ok(not $c->can('_zzz'));
34 is(@{C::ISA}, 1);
35 is(${C::ISA}[0], 'C-BB');
36 is(${"C-BB::ISA"}[0], 'A');