File Coverage

blib/lib/Duadua/Parser/Bot/DuckDuckBot.pm
Criterion Covered Total %
statement 16 16 100.0
branch 5 6 83.3
condition 3 3 100.0
subroutine 4 4 100.0
pod 1 1 100.0
total 29 30 96.6


line stmt bran cond sub pod time code
1             package Duadua::Parser::Bot::DuckDuckBot;
2 6     6   42 use strict;
  6         13  
  6         174  
3 6     6   29 use warnings;
  6         26  
  6         155  
4 6     6   30 use Duadua::Util;
  6         10  
  6         1130  
5              
6             sub try {
7 183     183 1 354 my ($class, $d) = @_;
8              
9 183 100 100     343 if ( index($d->ua, 'DuckDuck') > -1 && index($d->ua, '://duckduckgo.com') > -1) {
10 6         20 my $h = {
11             name => 'DuckDuckGo Bot',
12             is_bot => 1,
13             };
14              
15 6 100       15 if ($d->opt_version) {
16 3         9 my ($version) = ($d->ua =~ m!DuckDuck[^/]+/([\d.]+);!);
17 3 50       15 $h->{version} = $version if $version;
18             }
19              
20 6         25 return $h;
21             }
22             }
23              
24             1;
25              
26             __END__