File Coverage

blib/lib/assign/Test.pm
Criterion Covered Total %
statement 38 38 100.0
branch 3 6 50.0
condition 1 3 33.3
subroutine 12 12 100.0
pod 0 2 0.0
total 54 61 88.5


line stmt bran cond sub pod time code
1 5     5   1903 use strict; use warnings;
  5     5   33  
  5         147  
  5         23  
  5         8  
  5         168  
2             package
3             assign::Test;
4 5     5   2132 use XXX;
  5         8223  
  5         22  
5              
6 5     5   2458 use assign::0;
  5         22  
  5         31  
7 5     5   30604 use Test::More;
  5         531088  
  5         46  
8 5     5   4658 use Capture::Tiny;
  5         83920  
  5         262  
9 5     5   41 use XXX;
  5         20  
  5         61  
10              
11 5     5   376 use base 'Exporter';
  5         13  
  5         1883  
12              
13             our $t = -d 't' ? 't' : 'test';
14              
15             our @EXPORT = qw(
16             $t
17             test
18             is ok pass fail like
19             capture
20             XXX
21             WWW
22             );
23              
24             sub import {
25 5     5   66 strict->import;
26 5         62 warnings->import;
27 5         8677 goto &Exporter::import;
28             }
29              
30             my $test_count = 0;
31             sub test {
32             return if
33             defined $ENV{ONLY} and
34 15 50 33 15 0 5317 $ENV{ONLY} != ++$test_count;
35              
36 15         33 $assign::0::var_prefix = '_';
37 15         24 $assign::0::var_id = 0;
38              
39 15         46 my ($spec, $label) = @_;
40              
41 15 50       118 $spec =~ /(.*\n)\+\+\+\n(.*)/s
42             or die "Invalid spec for 'test()'";
43 15         67 my ($perl, $want) = ($1, $2);
44              
45 15         90 my $got = assign::0->new(code => $perl)->transform;
46              
47 15         10768 is $got, $want, $label;
48             }
49              
50 1     1 0 131 sub capture { goto &Capture::Tiny::capture_merged }
51              
52             END {
53             package main;
54              
55 5 50   5   176393 if (not defined $ENV{PERL_ZILD_TEST_000_COMPILE_MODULES}) {
56 5         51 Test::More::done_testing();
57             }
58             }
59              
60             1;