| Server IP : 23.254.227.96 / Your IP : 216.73.216.183 Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64 User : viralblo ( 1001) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/doc/perl-Sub-Exporter/t/ |
Upload File : |
#!/usr/bin/perl -T
use strict;
use warnings;
=head1 TEST PURPOSE
These tests check export group expansion, specifically the expansion of groups
that use group generators, more specifically when actually imported.
=cut
use Test::More tests => 8;
use lib 't/lib';
use Carp;
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",
);