403Webshell
Server IP : 104.21.13.164  /  Your IP : 216.73.216.44
Web Server : Apache
System : Linux gator4057.hostgator.com 5.14.0-687.17.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Jun 22 07:21:26 EDT 2026 x86_64
User : badawi ( 1130)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/doc/perl-Class-Method-Modifiers/t/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/doc/perl-Class-Method-Modifiers/t/003-basic.t
use strict;
use warnings;
use Test::More 0.88;
use if $ENV{AUTHOR_TESTING}, 'Test::Warnings';

my @calls;

do {
    package MyParent;
    use Class::Method::Modifiers;

    sub original { push @calls, 'MyParent::original' }
    before original => sub { push @calls, 'before MyParent::original' };
    after  original => sub { push @calls, 'after MyParent::original' };
};

MyParent->original;
is_deeply([splice @calls], [
    'before MyParent::original',
    'MyParent::original',
    'after MyParent::original',
]);

do {
    package MyParent;
    use Class::Method::Modifiers;

    before original => sub { push @calls, 'before before MyParent::original' };
    after  original => sub { push @calls, 'after after MyParent::original' };
};

MyParent->original;
is_deeply([splice @calls], [
    'before before MyParent::original',
    'before MyParent::original',
    'MyParent::original',
    'after MyParent::original',
    'after after MyParent::original',
]);

do {
    package Child;
    BEGIN { our @ISA = 'MyParent' }
};

MyParent->original;
is_deeply([splice @calls], [
    'before before MyParent::original',
    'before MyParent::original',
    'MyParent::original',
    'after MyParent::original',
    'after after MyParent::original',
]);

Child->original;
is_deeply([splice @calls], [
    'before before MyParent::original',
    'before MyParent::original',
    'MyParent::original',
    'after MyParent::original',
    'after after MyParent::original',
]);

do {
    package Child;
    use Class::Method::Modifiers;

    before original => sub { push @calls, 'before Child::original' };
    after  original => sub { push @calls, 'after Child::original' };
};

MyParent->original;
is_deeply([splice @calls], [
    'before before MyParent::original',
    'before MyParent::original',
    'MyParent::original',
    'after MyParent::original',
    'after after MyParent::original',
]);

Child->original;
is_deeply([splice @calls], [
    'before Child::original',
    'before before MyParent::original',
    'before MyParent::original',
    'MyParent::original',
    'after MyParent::original',
    'after after MyParent::original',
    'after Child::original',
]);

done_testing;

Youez - 2016 - github.com/yon3zu
LinuXploit