Branch Coverage

blib/lib/WWW/Shopify/Liquid/Lexer.pm
Criterion Covered Total %
branch 99 120 82.5


line true false branch
41 0 36 if $self->is_processed($$self{'core'})
43 0 47 if (ref $part eq 'WWW::Shopify::Liquid::Token::Variable::Processing') { }
47 0 47 $self->is_processed($part) ? :
48 0 47 unless defined $key and $key ne ''
49 45 2 if (reftype $place and reftype $place eq 'HASH' and exists $$place{$key}) { }
2 0 elsif (reftype $place and reftype $place eq 'ARRAY' and looks_like_number $key and defined $$place[$key]) { }
68 0 0 unless $self->is_processed($argument)
70 0 0 unless $self->is_processed($result)
85 104 90 if not defined $_[2] or $_[2] =~ /^\s*$/
116 46 276 if $package->is_enclosing and $package->inner_halt_lexing
120 69 1242 if $package->transparent
127 0 636 unless defined $token
129 174 462 if $self->operators->{$token}
130 47 415 if $token =~ /^'(.*)'$/ or $token =~ /^"(.*)"$/
131 82 333 if looks_like_number $token
132 0 333 if $token eq ''
133 19 314 if $token eq ':' or $token eq ','
140 460 0 unless ($squot or $dquot)
141 16 444 if $sym and $sym eq ']'
142 442 18 if ($sym eq '.' || $sym eq ']' || $sym eq '[' || !$sym and $open_bracket == 0)
144 440 2 if (defined $contents and $contents ne '')
146 424 16 if (not $sym or $sym eq '.' or $sym eq '[') { }
16 0 elsif ($sym eq ']') { }
147 5 419 $self->transparent_filters->{$contents} ? :
152 440 0 if (int @variables > 0)
153 436 4 if (int @variables == 1) { }
163 442 18 if $sym ne '"' and $sym ne q['] and not $open_bracket
164 16 444 if $sym and $sym eq '['
167 0 460 if $token eq q[']
168 0 460 if $token eq '"'
176 128 273 if not defined $exp or $exp eq ''
185 924 11 unless ($squot or $dquot)
186 21 903 if $rc eq '(' and $level++ == 0
187 16 908 if $rc eq '[' and $sq_level++ == 0
189 21 903 if ($rc eq ')' and --$level == 0)
193 16 908 if $rc eq ']'
194 835 89 if ($level == 0 and $sq_level == 0)
196 751 84 if (defined $whitespace or $nword_op)
197 751 0 if (defined $start_space)
199 487 264 unless $contents =~ /^\s*$/
201 149 602 if $nword_op
206 102 900 if $rc eq q['] and not $dquot
207 16 986 if $rc eq '"' and not $squot
209 0 273 unless $level == 0
211 1 56 if $tokens[$_]->isa('WWW::Shopify::Liquid::Token::Number') and $tokens[$_ - 1]->isa('WWW::Shopify::Liquid::Token::Operator') and $tokens[$_ - 1]{'core'} eq '-'
222 0 78 unless defined $text
233 0 78 if $text eq ''
238 134 447 if (defined $4)
245 4 443 if ($tag and not $lexing_halter and exists $$self{'lexing_halters'}{$tag}) { }
4 702 elsif ($tag and $lexing_halter and $tag eq 'end' . $lexing_halter) { }
255 436 11 unless ($lexing_halter)
256 192 244 if ($start < $-[0])
262 267 169 if $tag
263 91 345 if $output
274 0 10 unless $token
275 5 5 if $token->isa('WWW::Shopify::Liquid::Token::Variable')
276 1 4 if $token->isa('WWW::Shopify::Liquid::Token::Grouping')
287 8 7 if ($token->isa('WWW::Shopify::Liquid::Token::Tag'))
288 5 3 unless $$token{'arguments'}
291 2 5 if $token->isa('WWW::Shopify::Liquid::Token::Output')