Branch Coverage

blib/lib/Twitter/Text.pm
Criterion Covered Total %
branch 91 94 96.8


line true false branch
75 2 2 unless ($prev and $prev->{'indices'}[1] > $entity->{'indices'}[0])
91 1 10 unless $text =~ /\$/u
116 1 84 unless $text =~ /[#\x{ff03}]/u
118 83 1 unless exists $options->{'check_url_overlap'}
128 149 2 unless ($after =~ /$Twitter::Text::Regexp::end_hashtag_match/u)
136 83 1 if ($options->{'check_url_overlap'})
139 1 82 if (@$urls)
159 1 31 unless $text
164 1 31 if length $mention_or_list->{'list_slug'}
177 1 36 unless $text =~ /[\@\x{ff20}]/u
184 4 38 defined $list_slug ? :
187 38 4 unless ($after =~ /$Twitter::Text::Regexp::end_mention_match/u)
210 1811 1 $options->{'extract_url_without_protocol'} ? :
106 1707 unless $text and $options->{'extract_url_without_protocol'} ? $text =~ /\./u : $text =~ /:/u
222 59 1706 if (not $protocol) { }
223 15 44 if not $options->{'extract_url_without_protocol'} or $before =~ /$Twitter::Text::Regexp::invalid_url_without_protocol_preceding_chars/u
228 2 53 unless _is_valid_domain(length $url, $ascii_domain, $protocol)
237 2 42 unless $last_url
240 15 27 if ($path)
246 15 1691 if ($url =~ /($Twitter::Text::Regexp::valid_tco_url)/u)
247 1 14 if $2 and length $2 >= 40
252 10 1695 unless _is_valid_domain(length $url, $domain, $protocol)
267 0 1760 unless $domain
272 12 1748 if ($@)
276 168 1580 if $updated_domain_length > $original_domain_length
277 53 1695 unless $protocol
294 1 7 unless length $hashtag
307 2 31 exists $opts{'unicode_domains'} ? :
308 6 27 exists $opts{'require_protocol'} ? :
310 2 31 unless $url
313 0 31 unless $url_parts and $url_parts eq $url
316 1 28 unless !$require_protocol || _valid_match($scheme, $Twitter::Text::Regexp::validate_url_scheme) && $scheme =~ /\Ahttps?\Z/iu and _valid_match($path, $Twitter::Text::Regexp::validate_url_path) and _valid_match($query, $Twitter::Text::Regexp::validate_url_query, 1) and _valid_match($fragment, $Twitter::Text::Regexp::validate_url_fragment, 1)
327 84 58 unless $optional
334 1 4 unless $username
348 1 51 unless length $normalized_text > 0
358 24 27 $config->{'emojiParsingEnabled'} ? :
371 37 26212 if ($url_entity->{'indices'}[0] == $offset)
377 31 6 if ($weighted_count <= $scaled_max_weighted_tweet_length)
386 318 22649 if ($emoji_entity->{'indices'}[0] == $offset)
392 298 20 if ($weighted_count <= $scaled_max_weighted_tweet_length)
400 355 28985 if $entity_length > 0
402 28985 0 if ($offset < length $normalized_text)
409 26811 5762 if ($range_start <= $chr and $chr <= $range_end)
417 28981 4 unless $has_invalid_chars
422 5190 23795 if (not $has_invalid_chars and $weighted_count <= $scaled_max_weighted_tweet_length)
434 30 21 $is_valid ? :
459 3 28978 if not $text or length $text == 0