#!perl -T
BEGIN {
local
$SIG
{__DIE__} =
sub
{ Carp::confess
@_
};
use_ok(
'Test::SubExporter::GroupGen'
);
Test::SubExporter::GroupGen->
import
(
col1
=> {
value
=> 2 },
-generated
=> {
xyz
=> 1 },
-generated
=> {
xyz
=> 5,
-prefix
=>
'five_'
},
-symbolic
=> {
xyz
=> 2 },
);
use_ok(
'Test::SubExporter::GroupGenSubclass'
);
Test::SubExporter::GroupGenSubclass->
import
(
col1
=> {
value
=> 3 },
-symbolic
=> {
-prefix
=>
'subclass_'
,
xyz
=> 4 },
);
}
for
my
$routine
(
qw(foo bar)
) {
is_deeply(
main->
$routine
(),
{
name
=>
$routine
,
class
=>
'Test::SubExporter::GroupGen'
,
group
=>
'generated'
,
arg
=> {
xyz
=> 1 },
collection
=> {
col1
=> {
value
=> 2 } },
},
"generated $routine does what we expect"
,
);
my
$five
=
"five_$routine"
;
is_deeply(
main->
$five
(),
{
name
=>
$routine
,
class
=>
'Test::SubExporter::GroupGen'
,
group
=>
'generated'
,
arg
=> {
xyz
=> 5 },
collection
=> {
col1
=> {
value
=> 2 } },
},
"generated $five does what we expect"
,
);
}
is_deeply(
main->baz(),
{
name
=>
'baz'
,
class
=>
'Test::SubExporter::GroupGen'
,
group
=>
'symbolic'
,
arg
=> {
xyz
=> 2 },
collection
=> {
col1
=> {
value
=> 2 } },
},
"parent class's generated baz does what we expect"
,
);
is_deeply(
main->subclass_baz(),
{
name
=>
'baz-sc'
,
class
=>
'Test::SubExporter::GroupGenSubclass'
,
group
=>
'symbolic'
,
arg
=> {
xyz
=> 4 },
collection
=> {
col1
=> {
value
=> 3 } },
},
"inheriting class's generated baz does what we expect"
,
);