xref: /openbsd-src/gnu/usr.bin/perl/cpan/Test-Simple/t/Legacy/subtest/args.t (revision 5759b3d249badf144a6240f7eec4dcf9df003e6b)
1*5759b3d2Safresh1#!/usr/bin/perl -w
2*5759b3d2Safresh1
3*5759b3d2Safresh1use strict;
4*5759b3d2Safresh1use Test::Builder;
5*5759b3d2Safresh1
6*5759b3d2Safresh1BEGIN {
7*5759b3d2Safresh1    if( $ENV{PERL_CORE} ) {
8*5759b3d2Safresh1        chdir 't';
9*5759b3d2Safresh1        @INC = ( '../lib', 'lib' );
10*5759b3d2Safresh1    }
11*5759b3d2Safresh1    else {
12*5759b3d2Safresh1        unshift @INC, 't/lib';
13*5759b3d2Safresh1    }
14*5759b3d2Safresh1}
15*5759b3d2Safresh1use Test::Builder::NoOutput;
16*5759b3d2Safresh1
17*5759b3d2Safresh1my $tb = Test::Builder->new;
18*5759b3d2Safresh1
19*5759b3d2Safresh1$tb->ok( !eval { $tb->subtest() } );
20*5759b3d2Safresh1$tb->like( $@, qr/^\Qsubtest()'s second argument must be a code ref/ );
21*5759b3d2Safresh1
22*5759b3d2Safresh1$tb->ok( !eval { $tb->subtest("foo") } );
23*5759b3d2Safresh1$tb->like( $@, qr/^\Qsubtest()'s second argument must be a code ref/ );
24*5759b3d2Safresh1
25*5759b3d2Safresh1my $foo;
26*5759b3d2Safresh1$tb->subtest('Arg passing', sub {
27*5759b3d2Safresh1    $foo = shift;
28*5759b3d2Safresh1    $tb->ok(1);
29*5759b3d2Safresh1}, 'foo');
30*5759b3d2Safresh1
31*5759b3d2Safresh1$tb->is_eq($foo, 'foo');
32*5759b3d2Safresh1
33*5759b3d2Safresh1$tb->done_testing();
34