line |
true |
false |
branch |
33
|
10 |
0 |
if (@args % 2) { } |
78
|
0 |
90 |
unless (exists $o{$opt}) |
84
|
0 |
90 |
if (exists $opts{'opt'} or exists $ENV{$OPT} or defined ${"main::$OPT";}) |
89
|
0 |
0 |
if (defined ${"main::$OPT";}) { } |
|
0 |
0 |
elsif (exists $ENV{$OPT}) { } |
101
|
0 |
10 |
if ($self->{'mode'} ne "test") |
114
|
10 |
0 |
if (-f "$0") { } |
|
0 |
0 |
elsif (-d './t') { } |
|
0 |
0 |
elsif (-d '../t') { } |
121
|
10 |
0 |
if (-d "$moddir/t") |
124
|
10 |
0 |
if (-d "$moddir/lib") |
139
|
0 |
10 |
if (defined $val) |
144
|
10 |
0 |
if ($self->{'use_lib'} eq "on") |
146
|
0 |
20 |
unless defined $dir |
154
|
0 |
0 |
if ($req and $req eq 'mod') { } |
|
0 |
0 |
elsif ($req and $req eq 'lib') { } |
164
|
0 |
0 |
unless defined $val |
165
|
0 |
0 |
unless $val =~ /^\d+$/ |
171
|
0 |
0 |
unless $val |
172
|
0 |
0 |
unless $val =~ /^\d+$/ |
178
|
0 |
0 |
if (not defined $val) { } |
182
|
0 |
0 |
unless $val =~ /^\d+$/ |
190
|
0 |
0 |
if ($self->{'plandone'}) |
195
|
0 |
0 |
unless defined $val |
196
|
0 |
0 |
unless $val =~ /^\d+$/ |
199
|
0 |
0 |
if ($val != 0) |
207
|
0 |
8 |
if ($self->{'plandone'}) |
212
|
8 |
0 |
unless $val |
213
|
0 |
8 |
unless $val =~ /^\d+$/ |
216
|
0 |
8 |
if ($val != $main::TI_NUM) |
223
|
0 |
0 |
unless $val |
229
|
0 |
0 |
unless $val |
235
|
0 |
0 |
unless $val |
241
|
0 |
0 |
unless $val |
248
|
0 |
2 |
if (@features) |
251
|
0 |
0 |
unless (exists $self->{'features'}{$feature} and $self->{'features'}{$feature}) |
254
|
0 |
0 |
unless $reason |
259
|
0 |
0 |
unless $skip |
262
|
0 |
2 |
if ($self->{'plandone'} or $self->{'testsrun'}) { } |
264
|
0 |
0 |
unless $reason |
268
|
0 |
2 |
unless $reason |
288
|
0 |
0 |
if $self->{'quiet'} == 2 |
294
|
0 |
0 |
if $self->{'quiet'} |
306
|
2 |
4 |
unless $mode |
307
|
4 |
2 |
unless $mode eq "feature" |
315
|
2 |
4 |
if ($module =~ /^\d+(?:\.\d+)?$/) { } |
323
|
0 |
4 |
unless $self->_is_module_name($module) |
337
|
2 |
4 |
if $mode eq "forbid" |
338
|
2 |
4 |
if $mode eq "feature" |
348
|
3 |
3 |
if ($eval_result) { } |
350
|
0 |
3 |
if ($mode eq 'forbid') { } |
|
1 |
2 |
elsif ($mode eq 'feature') { } |
354
|
0 |
0 |
unless $self->{'quiet'} == 2 |
358
|
1 |
0 |
unless ($self->{'quiet'}) |
368
|
2 |
1 |
if ($mode eq 'forbid') { } |
|
1 |
0 |
elsif ($mode eq 'feature') { } |
372
|
1 |
0 |
unless ($self->{'quiet'}) |
385
|
0 |
6 |
if $ok and $self->{'quiet'} or not $ok and $self->{'quiet'} == 2 |
396
|
7 |
5 |
if ($args[$#args] eq "forbid" or $args[$#args] eq "feature") |
400
|
10 |
2 |
unless $mode eq "feature" |
405
|
3 |
9 |
if (@args == 1 and $args[0] =~ /^\d+(?:\.\d+)?$/) { } |
|
9 |
0 |
elsif (@args) { } |
417
|
0 |
9 |
unless ($self->_is_module_name($module)) |
423
|
3 |
6 |
if (@args and $args[0] =~ /^\d+(?:\.\d+)?$/) |
427
|
4 |
5 |
@args ? : |
447
|
5 |
7 |
if $mode eq "forbid" |
448
|
2 |
10 |
if $mode eq "feature" |
459
|
6 |
6 |
if ($eval_result) { } |
461
|
0 |
6 |
if ($mode eq 'forbid') { } |
|
1 |
5 |
elsif ($mode eq 'feature') { } |
465
|
0 |
0 |
unless $self->{'quiet'} == 2 |
469
|
1 |
0 |
unless ($self->{'quiet'}) |
479
|
5 |
1 |
if ($mode eq 'forbid') { } |
|
1 |
0 |
elsif ($mode eq 'feature') { } |
483
|
1 |
0 |
unless ($self->{'quiet'}) |
496
|
0 |
12 |
if $ok and $self->{'quiet'} or not $ok and $self->{'quiet'} == 2 |
511
|
13 |
0 |
$module =~ /^[a-zA-Z]\w*$/ ? : |
525
|
0 |
18 |
if defined $sigdie |
542
|
0 |
17 |
if ($op eq 'skip') { } |
|
17 |
0 |
elsif ($op eq 'pass') { } |
558
|
0 |
17 |
if $ok and $self->{'quiet'} or not $ok and $self->{'quiet'} == 2 |
571
|
0 |
20 |
if $skip |
575
|
1 |
19 |
if (@args == 0) |
586
|
6 |
13 |
if (@args == 1) { } |
|
10 |
3 |
elsif (@args == 2) { } |
|
0 |
3 |
elsif (@args > 2) { } |
618
|
0 |
11 |
if ($op eq 'skip') { } |
|
11 |
0 |
elsif ($op eq 'pass') { } |
634
|
0 |
11 |
if $ok and $self->{'quiet'} or not $ok and $self->{'quiet'} == 2 |
647
|
0 |
24 |
if $skip |
651
|
0 |
24 |
if (@args < 2) |
658
|
0 |
24 |
if (@args == 1) { } |
|
24 |
0 |
elsif (@args == 2) { } |
679
|
21 |
22 |
if (ref $args->[0] eq 'CODE') { } |
|
7 |
15 |
elsif (ref $args->[0] eq 'ARRAY') { } |
682
|
17 |
4 |
if (ref $args->[0] eq "ARRAY") |
707
|
19 |
24 |
if ($type eq 'ok') { } |
708
|
13 |
6 |
if (ref $result eq 'ARRAY') { } |
|
2 |
4 |
elsif (ref $result eq 'HASH') { } |
710
|
18 |
0 |
if defined $ele |
716
|
4 |
0 |
if defined $val |
720
|
4 |
0 |
$result ? : |
723
|
9 |
10 |
if (not defined $expected) { } |
733
|
22 |
2 |
if ($type eq 'is') { } |
740
|
7 |
36 |
if (not $identical and $type ne "isnt") |
741
|
4 |
3 |
if ($func) |
745
|
7 |
0 |
unless $type eq "ok" and not defined $result |
749
|
43 |
0 |
$pass ? : |
758
|
18 |
0 |
if ($width) |
760
|
0 |
18 |
if $width < 10 |
761
|
0 |
18 |
if length $str > $width |
769
|
0 |
38 |
if (not defined $s) { } |
|
10 |
28 |
elsif (ref $s eq 'ARRAY') { } |
|
2 |
26 |
elsif (ref $s eq 'HASH') { } |
|
0 |
26 |
elsif (ref $s) { } |
|
0 |
26 |
elsif ($s eq '') { } |
797
|
0 |
26 |
if ($s =~ /\s/) { } |
800
|
0 |
0 |
unless ($s =~ /$q/) |
803
|
0 |
0 |
unless ($s =~ /$qq/) |
817
|
0 |
0 |
unless defined $s1 or defined $s2 |
818
|
0 |
76 |
unless defined $s1 and defined $s2 |
819
|
4 |
72 |
if ref $s1 ne ref $s2 |
821
|
17 |
55 |
if (ref $s1 eq 'ARRAY') { } |
|
4 |
51 |
elsif (ref $s1 eq 'HASH') { } |
|
0 |
51 |
elsif (ref $s1) { } |
822
|
0 |
17 |
if $#$s1 != $#$s2 |
824
|
2 |
33 |
unless $self->_cmp_structure($s1->[$i], $s2->[$i]) |
831
|
0 |
4 |
if $#k1 != $#k2 |
833
|
0 |
7 |
unless exists $s2->{$key} |
834
|
2 |
5 |
unless $self->_cmp_structure($s1->{$key}, $s2->{$key}) |
851
|
0 |
44 |
if ($self->{'skipall'}) { } |
|
0 |
88 |
elsif ($main::TI_NUM < $self->{'start'} or $self->{'end'} and $main::TI_NUM > $self->{'end'}) { } |
866
|
0 |
2 |
unless $name |
868
|
0 |
2 |
if (!ref($func) eq "CODE") |
877
|
1 |
1 |
if ($input) |
878
|
0 |
1 |
if (-r $input) { } |
|
1 |
0 |
elsif (-r "$testdir/$input") { } |
892
|
2 |
0 |
unless ($outputdir) |
893
|
2 |
0 |
if (-d $testdir and -w $testdir) { } |
900
|
2 |
0 |
if ($outputdir) |
901
|
0 |
2 |
unless (-d $outputdir and -w $outputdir) |
911
|
0 |
2 |
if (not $expected) { } |
|
0 |
2 |
elsif (-r $expected) { } |
|
2 |
0 |
elsif (-r "$testdir/$expected") { } |
927
|
0 |
2 |
unless (-r "$output") |
943
|
2 |
0 |
unless $ENV{'TI_NOCLEAN'} |
954
|
7 |
0 |
$name ? : |
972
|
0 |
4 |
if (exists $opts{'feature'}) |
976
|
0 |
0 |
unless exists $self->{'features'}{$feature} and $self->{'features'}{$feature} |
979
|
0 |
4 |
if (exists $opts{'disable'} and not $skip) |
983
|
0 |
0 |
if exists $self->{'features'}{$feature} and $self->{'features'}{$feature} |
994
|
0 |
4 |
if (exists $opts{'name'}) |
998
|
0 |
4 |
if (exists $opts{'skip'}) |
1003
|
0 |
4 |
if (exists $opts{'todo'}) |
1014
|
0 |
4 |
unless (exists $opts{'tests'}) |
1021
|
0 |
4 |
if (ref $tests eq 'ARRAY') { } |
1027
|
0 |
0 |
if (ref $result eq 'ARRAY') { } |
1037
|
1 |
3 |
if $gotexpected |
1041
|
2 |
2 |
if (exists $opts{'expected'}) |
1042
|
0 |
2 |
if ($gotexpected) |
1047
|
1 |
1 |
if (ref $expected eq 'ARRAY') { } |
1052
|
1 |
0 |
if (ref $exp eq 'ARRAY') { } |
1062
|
0 |
1 |
if ($g) |
1072
|
0 |
3 |
if ($gotexpected and ($nexp != 1 and $nexp != $ntest)) |
1079
|
3 |
1 |
if (exists $opts{'func'}) |
1081
|
0 |
3 |
if (ref $func ne "CODE") |
1093
|
0 |
16 |
if ($skip) |
1098
|
0 |
16 |
if ($tests{$t}{'err'}) |
1108
|
13 |
3 |
if ($gotexpected) { } |
1112
|
13 |
0 |
if $func |
1115
|
6 |
7 |
$nexp == 1 ? : |
1124
|
0 |
3 |
if (@$result == 1) |
1135
|
0 |
16 |
if ($op eq 'skip') { } |
|
16 |
0 |
elsif ($op eq 'pass') { } |
1151
|
0 |
16 |
if $ok and $self->{'quiet'} or not $ok and $self->{'quiet'} == 2 |
1170
|
8 |
2 |
unless $reason |
1172
|
10 |
0 |
if ($self->{'mode'} eq 'test') { } |
1176
|
2 |
8 |
unless ($n) |
1177
|
0 |
2 |
unless $reason |
1186
|
0 |
0 |
if (not $n) { } |
1190
|
0 |
0 |
unless $self->{'quiet'} |
1198
|
19 |
39 |
unless $name |
1204
|
0 |
0 |
if $self->{'mode'} ne "test" and $self->{'quiet'} |
1208
|
0 |
58 |
if ($name =~ /^\d/ and $self->{'quiet'} != 2) |
1217
|
0 |
0 |
unless $name |
1224
|
0 |
0 |
if ($self->{'abort'} == 2) { } |
|
0 |
0 |
elsif ($self->{'abort'}) { } |
1233
|
0 |
0 |
unless $name |
1239
|
0 |
0 |
if $self->{'mode'} ne "test" and $self->{'quiet'} |
1241
|
0 |
0 |
$name ? : |
1307
|
0 |
17 |
unless @$test |
1311
|
5 |
12 |
if ($gotboth == -1) { } |
|
0 |
12 |
elsif ($gotboth != $both) { } |
1320
|
7 |
10 |
if $gotboth |
1335
|
1 |
33 |
unless @$list |
1345
|
16 |
17 |
if ($line eq "") |
1347
|
0 |
16 |
unless $started |
1352
|
0 |
17 |
if ($line =~ /^#/) |
1361
|
0 |
17 |
unless $started |
1375
|
17 |
51 |
unless $self->_test_line($test) |
1379
|
7 |
44 |
if ($self->_parse_begin_results($test)) |
1380
|
7 |
0 |
if ($curr eq 'args') { } |
1391
|
0 |
44 |
if $err |
1393
|
29 |
15 |
if ($curr eq 'args') { } |
1400
|
7 |
10 |
$curr eq 'results' ? : |
1417
|
112 |
17 |
if @$test |
1428
|
7 |
44 |
if $test->[0] =~ s/^ $sp_opt $results $eot //x |
1445
|
0 |
61 |
unless $self->_test_line($test) |
1450
|
0 |
61 |
if $err |
1451
|
2 |
59 |
if ($found) |
1459
|
0 |
59 |
if $err |
1460
|
7 |
52 |
if ($found) |
1462
|
0 |
7 |
if (@val == 1 and $val[0] eq "") |
1469
|
0 |
52 |
if $err |
1470
|
2 |
50 |
if ($found) |
1472
|
2 |
0 |
if (@val == 1 and $val[0] eq '') { } |
1481
|
0 |
50 |
if $err |
1482
|
2 |
48 |
if ($found) |
1483
|
2 |
0 |
if (@val == 1 and $val[0] eq '') { } |
|
0 |
0 |
elsif (@val % 2 == 0) { } |
|
0 |
0 |
elsif (not defined $val[$#val] or $val[$#val] eq '') { } |
1504
|
0 |
48 |
if $err |
1509
|
0 |
61 |
if $err |
1510
|
0 |
61 |
unless $found |
1513
|
0 |
68 |
if $v eq "__blank__" |
1514
|
0 |
68 |
if $v eq "__undef__" |
1515
|
62 |
6 |
if $v |
1517
|
61 |
0 |
if $found |
1553
|
2 |
59 |
if ($test->[0] =~ s/^ $sp_opt $q ($min_str) $q $EOT//x or $test->[0] =~ s/^ $sp_opt $qq ($min_str) $qq $EOT//x) { } |
|
0 |
59 |
elsif ($test->[0] =~ /^ $sp_opt $q/x or $test->[0] =~ /^ $sp_opt $qq/x) { } |
1580
|
2 |
159 |
if ($test->[0] =~ s/^ $sp_opt $open ($delim) $sp_opt //x) { } |
|
9 |
150 |
elsif ($test->[0] =~ s/^ $sp_opt $open $sp_opt //x) { } |
1602
|
0 |
17 |
if $e |
1610
|
0 |
17 |
if (not $m and $del) |
1612
|
0 |
0 |
unless ($self->_test_line($test)) |
1616
|
0 |
0 |
if ($test->[0] =~ s/^ $sp_opt $newEOT //x) { } |
1624
|
0 |
17 |
if ($m eq $close and not @v) { } |
1630
|
11 |
6 |
if $m eq $close |
1636
|
2 |
9 |
if ($test->[0] eq "") |
1640
|
9 |
0 |
if ($test->[0] =~ s/^ $sp_opt $EOT //x) { } |