Heray-Was-Here
Server : Apache
System : Linux vps103298.mylogin.co 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : calvet ( 273824)
PHP Version : 7.4.33
Disable Function : NONE
Directory :  /proc/self/root/usr/share/doc/perl-Moose/t/roles/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/usr/share/doc/perl-Moose/t/roles/reinitialize_anon_role.t
use strict;
use warnings;
use Test::More;

{
    package Role::Metarole;
    use Moose::Role;
}

my ($role2);
{
    my $role1 = Moose::Meta::Role->create_anon_role(
        methods => {
            foo => sub { },
        },
    );
    ok($role1->has_method('foo'), "role has method foo");
    $role2 = Moose::Util::MetaRole::apply_metaroles(
        for => $role1->name,
        role_metaroles => { role => ['Role::Metarole'] },
    );
    isnt($role1, $role2, "anon role was reinitialized");
    is($role1->name, $role2->name, "but it's the same anon role");
    is_deeply([sort $role2->get_method_list], ['foo', 'meta'],
              "has the right methods");
}
is_deeply([sort $role2->get_method_list], ['foo', 'meta'],
          "still has the right methods");

done_testing;

Hry