File Coverage

lib/Perl/PrereqScanner/NotQuiteLite/Parser/TestMore.pm
Criterion Covered Total %
statement 26 26 100.0
branch 8 12 66.6
condition n/a
subroutine 8 8 100.0
pod 0 5 0.0
total 42 51 82.3


line stmt bran cond sub pod time code
1             package Perl::PrereqScanner::NotQuiteLite::Parser::TestMore;
2              
3 84     84   1465 use strict;
  84         186  
  84         2243  
4 84     84   437 use warnings;
  84         213  
  84         1970  
5 84     84   420 use Perl::PrereqScanner::NotQuiteLite::Util;
  84         199  
  84         29990  
6              
7             sub register { return {
8 83     83 0 477 use => {
9             'Test::More' => 'parse_test_more_args',
10             },
11             }}
12              
13             sub register_fqfn { return +{
14 737     737 0 3052 'Test::More::done_testing' => 'parse_done_testing_args',
15             'Test::More::plan' => 'parse_plan_args',
16             }}
17              
18             sub parse_test_more_args {
19 18     18 0 53 my ($class, $c, $used_module, $raw_tokens) = @_;
20              
21 18         88 $c->register_keyword_parser(
22             'done_testing',
23             [$class, 'parse_done_testing_args', $used_module],
24             );
25              
26 18         66 $c->register_keyword_parser(
27             'plan',
28             [$class, 'parse_plan_args', $used_module],
29             );
30             }
31              
32             sub parse_done_testing_args {
33 4     4 0 11 my ($class, $c, $used_module, $raw_tokens) = @_;
34              
35 4         15 $c->add($used_module => '0.88');
36             }
37              
38             sub parse_plan_args {
39 8     8 0 19 my ($class, $c, $used_module, $raw_tokens) = @_;
40              
41 8         25 my $tokens = convert_string_tokens($raw_tokens);
42 8         16 shift @$tokens; # discard plan
43              
44 8 50       20 my $first_token = $tokens->[0] or return;
45 8 100       29 $first_token = $first_token->[0] if ref $first_token;
46              
47 8 50       18 if ($first_token eq 'skip_all') {
48 8 50       14 if (grep {$_->[0] eq '{' and $_->[2] eq 'BEGIN'} @{$c->{stack} || []}) {
  7 50       43  
  8 100       42  
49 5         21 $c->{force_cond} = 1;
50             }
51             }
52             }
53              
54             1;
55              
56             __END__