|
Packit |
1c5632 |
use Sub::Install qw(install_sub);
|
|
Packit |
1c5632 |
use Test::More 'no_plan';
|
|
Packit |
1c5632 |
|
|
Packit |
1c5632 |
use strict;
|
|
Packit |
1c5632 |
use warnings;
|
|
Packit |
1c5632 |
|
|
Packit |
1c5632 |
sub source_method {
|
|
Packit |
1c5632 |
my ($package) = @_;
|
|
Packit |
1c5632 |
return $package;
|
|
Packit |
1c5632 |
}
|
|
Packit |
1c5632 |
|
|
Packit |
1c5632 |
{ # install named method and let the name be the same
|
|
Packit |
1c5632 |
install_sub({ code => "source_method", into => "By::Name" });
|
|
Packit |
1c5632 |
|
|
Packit |
1c5632 |
is(
|
|
Packit |
1c5632 |
By::Name->source_method,
|
|
Packit |
1c5632 |
'By::Name',
|
|
Packit |
1c5632 |
"method installed by name"
|
|
Packit |
1c5632 |
);
|
|
Packit |
1c5632 |
}
|
|
Packit |
1c5632 |
|
|
Packit |
1c5632 |
{ # install via a coderef and let name be looked up
|
|
Packit |
1c5632 |
install_sub({ code => \&source_method, into => "By::Ref" });
|
|
Packit |
1c5632 |
|
|
Packit |
1c5632 |
is(
|
|
Packit |
1c5632 |
By::Ref->source_method,
|
|
Packit |
1c5632 |
'By::Ref',
|
|
Packit |
1c5632 |
"method installed by ref, without name"
|
|
Packit |
1c5632 |
);
|
|
Packit |
1c5632 |
}
|