1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
#!/usr/bin/perl
use v5.14;
use warnings;
use Test2::V0;
use lib "t";
use testcase "t::probing";
BEGIN { $^H{"t::probing/permit"} = 1; }
# colon
{
ok( !probecolon, 'colon absent' );
ok( probecolon :, 'colon present' );
}
# literal
{
ok( !probeliteral, 'literal absent' );
ok( probeliteral literal, 'literal present' );
}
# block
{
ok( !probeblock, 'block absent' );
ok( probeblock {}, 'block present' );
}
# ident
{
ok( !probeident, 'ident absent' );
ok( probeident foo, 'ident present' );
}
# packagename
{
ok( !probepackagename, 'packagename absent' );
ok( probepackagename Pkg::Name, 'packagename present' );
}
# vstring
{
ok( !probevstring, 'vstring absent' );
ok( probevstring v1.2.3, 'vstring present' );
}
# choice
{
ok( !probechoice, 'choice absent' );
ok( probechoice x, '1st choice present' );
ok( probechoice z, '2nd choice present' );
}
# tagged choice
{
ok( !probetaggedchoice, 'tagged choice absent' );
ok( probetaggedchoice x, '1st tagged choice present' );
ok( probetaggedchoice z, '2nd tagged choice present' );
}
# comma list
{
ok( !probecommalist, 'comma list absent' );
is( ( probecommalist a ), 1, 'comma list present x 1' );
is( ( probecommalist a, b ), 2, 'comma list present x 2' );
}
# paren scope
{
ok( !probeparens, 'parens absent' );
ok( probeparens (123), 'parens present' );
}
# bracket scope
{
ok( !probebrackets, 'brackets absent' );
ok( probebrackets [123], 'brackets present' );
}
# brace scope
{
ok( !probebraces, 'braces absent' );
ok( probebraces {123}, 'braces present' );
}
# chevron scope
{
ok( !probechevrons, 'chevrons absent' );
ok( probechevrons <abc>, 'chevrons present' );
}
done_testing;
|