line |
true |
false |
branch |
33
|
46 |
1 |
if (ref $_[0] eq 'HASH') { } |
45
|
0 |
1 |
if @_ |
58
|
1 |
46 |
if $assert |
59
|
2 |
45 |
if $operator |
62
|
3 |
44 |
unless ($agent) |
63
|
3 |
0 |
defined 'MediaWiki::Bot'->VERSION ? : |
66
|
1 |
2 |
if $operator |
71
|
1 |
46 |
if $assert |
74
|
0 |
47 |
defined $maxlag ? : |
82
|
47 |
0 |
if defined $agent |
92
|
0 |
47 |
if ($login_data) |
94
|
0 |
0 |
if ($success) { } |
98
|
0 |
0 |
if $$self{'debug'} |
113
|
47 |
0 |
if (ref $_[0] eq 'HASH') { } |
126
|
46 |
1 |
unless defined $protocol |
127
|
1 |
46 |
unless defined $host |
128
|
46 |
1 |
unless defined $path |
132
|
0 |
47 |
if ($host =~ m[^(http|https)(://)?] and not $protocol) |
140
|
0 |
47 |
if (defined $$self{'host'} and $$self{'host'} ne $host or defined $$self{'path'} and $$self{'path'} ne $path or defined $$self{'protocol'} and $$self{'protocol'} ne $protocol) |
144
|
0 |
0 |
if $$self{'ns_data'} |
145
|
0 |
0 |
if $$self{'ns_alias_data'} |
152
|
46 |
1 |
$path ? : |
155
|
0 |
47 |
if $$self{'debug'} > 1 |
169
|
1 |
0 |
if (ref $_[0] eq 'HASH') { } |
172
|
0 |
1 |
defined $_[0]{'autoconfig'} ? : |
188
|
0 |
1 |
if ($basic_auth) |
189
|
0 |
0 |
if $$self{'debug'} > 1 |
198
|
0 |
1 |
if ($$self{'host'} eq 'secure.wikimedia.org') |
204
|
0 |
1 |
if ($do_sul) |
206
|
0 |
0 |
if $$self{'debug'} > 1 and not $sul_success |
210
|
1 |
0 |
if (-r $cookies) |
215
|
0 |
1 |
if ($self->_is_loggedin) |
216
|
0 |
0 |
if $autoconfig |
217
|
0 |
0 |
if $$self{'debug'} > 1 |
222
|
0 |
1 |
unless ($password) |
223
|
0 |
0 |
if $$self{'debug'} |
227
|
0 |
1 |
unless my $res = $$self{'api'}->api({'action', 'login', 'lgname', $username, 'lgpassword', $password, 'lgdomain', $lgdomain}) |
234
|
1 |
0 |
if -w $cookies or -w '.' |
236
|
0 |
1 |
unless $$res{'login'} |
237
|
0 |
1 |
unless $$res{'login'}{'result'} |
239
|
1 |
0 |
if ($$res{'login'}{'result'} eq 'NeedToken') |
241
|
0 |
1 |
unless $res = $$self{'api'}->api({'action', 'login', 'lgname', $username, 'lgpassword', $password, 'lgdomain', $lgdomain, 'lgtoken', $token}) |
250
|
1 |
0 |
if -w $cookies or -w '.' |
253
|
0 |
1 |
if ($$res{'login'}{'result'} eq 'Success') |
254
|
0 |
0 |
if ($$res{'login'}{'lgusername'} eq $$self{'username'}) |
255
|
0 |
0 |
if $autoconfig |
256
|
0 |
0 |
if $$self{'debug'} > 1 |
294
|
0 |
0 |
if $debug > 1 |
304
|
0 |
0 |
$success ? : |
|
0 |
0 |
if $debug > 1 |
305
|
0 |
0 |
if $debug > 1 and not $success |
317
|
0 |
0 |
if $debug > 1 |
345
|
8 |
0 |
if (ref $_[0] eq 'HASH') { } |
367
|
1 |
7 |
unless $summary |
368
|
1 |
7 |
if ($assert) { } |
374
|
7 |
1 |
unless defined $is_minor |
375
|
8 |
0 |
unless defined $markasbot |
378
|
0 |
8 |
unless $edittoken |
387
|
1 |
7 |
$section ? : |
|
1 |
7 |
$assert ? : |
|
8 |
0 |
$is_minor ? : |
403
|
1 |
7 |
unless $res |
404
|
0 |
7 |
if ($$res{'edit'}{'result'} and $$res{'edit'}{'result'} eq 'Failure') |
405
|
0 |
0 |
if ($$self{'operator'}) |
407
|
0 |
0 |
if (defined $optalk) |
408
|
0 |
0 |
if $$self{'debug'} |
409
|
0 |
0 |
if ($$self{'username'}) { } |
419
|
0 |
0 |
if $$self{'debug'} |
431
|
0 |
0 |
if $$self{'debug'} |
454
|
0 |
0 |
if defined $$opts{'movetalk'} |
455
|
0 |
0 |
if defined $$opts{'noredirect'} |
458
|
0 |
0 |
unless $res |
478
|
0 |
5 |
if $rvstartid |
479
|
0 |
5 |
if $direction |
482
|
0 |
5 |
unless $res |
520
|
9 |
14 |
if $revid |
521
|
1 |
22 |
if $section |
524
|
0 |
23 |
unless $res |
526
|
2 |
21 |
if ($id == -1) { } |
546
|
0 |
1 |
unless $res |
548
|
0 |
1 |
if ($id == -1) { } |
559
|
1 |
1 |
ref $_[0] eq 'ARRAY' ? : |
573
|
0 |
2 |
unless $res |
577
|
6 |
2 |
if ($$diff{$$page{'title'}}) { } |
584
|
2 |
4 |
if (defined $$page{'missing'}) |
588
|
4 |
0 |
if (defined $$page{'revisions'}) |
590
|
0 |
4 |
if (not defined $revisions) { } |
|
0 |
4 |
elsif (length $revisions < 150 and $revisions =~ /\#REDIRECT\s\[\[([^\[\]]+)\]\]/) { } |
607
|
2 |
6 |
if ($$diff{$title} == 1) |
609
|
2 |
0 |
if (@pieces > 1) |
612
|
0 |
2 |
if $$self{'debug'} > 1 |
615
|
0 |
2 |
if (defined $v and $v =~ /\#REDIRECT\s\[\[([^\[\]]+)\]\]/) |
632
|
0 |
0 |
if $$options{'width'} |
633
|
0 |
0 |
if $$options{'height'} |
642
|
0 |
0 |
unless $ref |
644
|
0 |
0 |
unless defined $$pageref{'imageinfo'} |
647
|
0 |
0 |
unless $url =~ m[^https?://] |
650
|
0 |
0 |
unless $response->code == 200 |
678
|
0 |
1 |
if defined $after |
693
|
0 |
1 |
unless $res |
711
|
1 |
2 |
unless $res |
733
|
1 |
0 |
unless $$options{'max'} |
736
|
0 |
1 |
unless $res |
737
|
0 |
1 |
unless ref $res |
761
|
2 |
3 |
if (ref $_[0] eq 'HASH') { } |
767
|
0 |
2 |
if (ref $args{'show'} eq 'HASH') { } |
785
|
2 |
3 |
if ref $ns eq 'ARRAY' |
794
|
0 |
5 |
if defined $user |
795
|
0 |
5 |
if defined $show |
797
|
5 |
0 |
unless $$options{'max'} |
799
|
0 |
5 |
unless my $res = $$self{'api'}->list($hash, $options) |
801
|
2 |
3 |
unless ref $res |
813
|
0 |
2 |
if ref $ns eq 'ARRAY' |
814
|
2 |
0 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
825
|
1 |
1 |
if defined $ns |
826
|
2 |
0 |
if $filter |
827
|
0 |
2 |
unless $$options{'max'} |
830
|
0 |
2 |
unless $res |
831
|
1 |
1 |
unless ref $res |
850
|
0 |
2 |
if ref $ns eq 'ARRAY' |
851
|
2 |
0 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
862
|
2 |
0 |
if $filter |
863
|
0 |
2 |
if defined $ns |
864
|
0 |
2 |
unless $$options{'max'} |
867
|
0 |
2 |
unless $res |
868
|
1 |
1 |
unless ref $res |
885
|
12 |
0 |
if ($category =~ /:/) { } |
887
|
0 |
12 |
if ($cat ne 'Category') |
890
|
0 |
0 |
if ($cat ne $cat_ns_name) |
898
|
0 |
12 |
if $$self{'debug'} > 1 |
906
|
0 |
12 |
unless defined $$options{'max'} |
907
|
1 |
11 |
if $$options{'max'} == 0 |
910
|
1 |
11 |
unless ref $res |
911
|
0 |
11 |
unless $res |
928
|
1 |
11 |
unless defined $$options{'max'} |
931
|
3 |
9 |
unless $_[0] |
941
|
16 |
1939 |
if ($page =~ /^$cat_ns_name:/) { } |
942
|
9 |
7 |
if (not exists $data{$page}) { } |
971
|
1 |
1 |
if (defined $options and $$options{'max'} == '0') |
976
|
0 |
2 |
unless $res |
994
|
0 |
2 |
if ref $ns eq 'ARRAY' |
1003
|
0 |
2 |
if defined $ns |
1004
|
0 |
2 |
if $prot |
1005
|
0 |
2 |
unless $$options{'max'} |
1008
|
0 |
2 |
unless $res |
1009
|
1 |
1 |
unless ref $res |
1025
|
0 |
0 |
if (ref $page eq 'ARRAY') { } |
1039
|
0 |
0 |
unless $res |
1042
|
0 |
0 |
if exists $$hashref{'purged'} |
1055
|
0 |
5 |
unless $res |
1071
|
0 |
3 |
unless ($image =~ /^File:|Image:/) |
1077
|
0 |
0 |
unless ($image =~ /^\Q$image_ns_name\E:/) |
1082
|
1 |
2 |
unless defined $$options{'max'} |
1083
|
0 |
3 |
if $$options{'max'} == 0 |
1085
|
0 |
3 |
if ref $ns eq 'ARRAY' |
1093
|
0 |
3 |
if defined $ns |
1094
|
1 |
2 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
1098
|
0 |
3 |
unless $res |
1099
|
1 |
2 |
unless ref $res |
1115
|
2 |
1 |
defined $limit ? : |
1117
|
1 |
2 |
unless ($image =~ /^File:|Image:/) |
1120
|
1 |
0 |
unless ($image =~ /^\Q$image_ns_name\E:/) |
1127
|
5 |
0 |
$limit ? : |
1135
|
1 |
2 |
if $filterlocal |
1136
|
0 |
3 |
if $cont |
1139
|
0 |
3 |
unless $res |
1142
|
0 |
3 |
if $cont and $$self{'debug'} > 1 |
1146
|
1 |
2 |
unless $cont |
1149
|
1 |
2 |
@data > $limit ? : |
1176
|
0 |
4 |
unless $res |
1179
|
2 |
2 |
if ($number == 1) { } |
|
2 |
0 |
elsif ($number == 0) { } |
1203
|
1 |
3 |
if (ref $image eq 'ARRAY') |
1214
|
0 |
4 |
unless $res |
1217
|
1 |
3 |
if ($multi) { } |
1230
|
2 |
4 |
if ($$res{'query'}{'pages'}{$id}{'imagerepository'} eq 'shared') { } |
|
2 |
2 |
elsif (exists $$res{'query'}{'pages'}{$id}{'missing'}) { } |
|
0 |
2 |
elsif ($$res{'query'}{'pages'}{$id}{'imagerepository'} eq '') { } |
|
2 |
0 |
elsif ($$res{'query'}{'pages'}{$id}{'imagerepository'} eq 'local') { } |
1231
|
1 |
1 |
if ($multi) { } |
1239
|
1 |
1 |
if ($multi) { } |
1247
|
0 |
0 |
if ($multi) { } |
1255
|
1 |
1 |
if ($multi) { } |
1280
|
3 |
1 |
unless defined $$options{'max'} |
1281
|
1 |
3 |
if exists $$options{'max'} and $$options{'max'} == 0 |
1284
|
1 |
3 |
unless $res |
1285
|
0 |
3 |
unless ref $res |
1302
|
0 |
2 |
unless $res |
1319
|
0 |
0 |
unless $res |
1327
|
1 |
1 |
unless $username =~ /User:/i |
1335
|
0 |
2 |
unless $res |
1350
|
0 |
1 |
unless $res |
1366
|
0 |
1 |
if ($limit > 50) |
1378
|
0 |
1 |
if $rvstartid |
1379
|
0 |
1 |
if $direction |
1382
|
0 |
1 |
unless $res |
1410
|
0 |
4 |
unless $res |
1413
|
2 |
2 |
if ($number == 1) { } |
|
2 |
0 |
elsif ($number == 0) { } |
1437
|
1 |
1 |
unless ($text) |
1438
|
0 |
1 |
unless $page |
1442
|
1 |
1 |
$page ? : |
1448
|
0 |
2 |
unless $res |
1465
|
1 |
1 |
if defined $group |
1466
|
2 |
0 |
unless exists $$opts{'max'} |
1467
|
0 |
2 |
if exists $$opts{'max'} and $$opts{'max'} == 0 |
1469
|
0 |
2 |
unless $res |
1470
|
0 |
2 |
unless ref $res |
1484
|
1 |
0 |
unless ($$self{'sitematrix'}) |
1488
|
1 |
0 |
if (ref $wiki eq 'ARRAY') { } |
1509
|
0 |
1 |
unless ($$self{'sitematrix'}) |
1513
|
1 |
0 |
if (ref $wiki eq 'ARRAY') { } |
1534
|
1 |
0 |
if (ref $_[0] eq 'HASH') { } |
1550
|
0 |
1 |
if ($title) { } |
|
1 |
0 |
elsif ($revid) { } |
1559
|
0 |
1 |
unless $res |
1574
|
0 |
1 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
1578
|
1 |
0 |
if (not defined $ns and $prefix =~ /:/) |
1579
|
0 |
1 |
if $$self{'debug'} > 1 |
1584
|
0 |
1 |
if $$self{'debug'} > 1 |
1593
|
1 |
0 |
if defined $ns |
1594
|
0 |
1 |
if $filter |
1595
|
1 |
0 |
unless $$options{'max'} |
1599
|
0 |
1 |
unless $res |
1600
|
0 |
1 |
unless ref $res |
1618
|
0 |
2 |
if (ref $ns eq 'ARRAY') |
1633
|
2 |
0 |
unless $$options{'max'} |
1636
|
0 |
2 |
unless $res |
1637
|
0 |
2 |
unless ref $res |
1657
|
1 |
0 |
if ($user) |
1668
|
1 |
0 |
if $log_type |
1669
|
1 |
0 |
if $user |
1670
|
1 |
0 |
if $target |
1671
|
1 |
0 |
unless $$options{'max'} |
1674
|
0 |
1 |
unless $res |
1675
|
0 |
1 |
unless ref $res |
1695
|
0 |
1 |
unless $res |
1696
|
1 |
0 |
unless $$res{'query'}{'globalblocks'}[0] |
1708
|
0 |
2 |
unless ($$self{'host'} eq 'meta.wikimedia.org') |
1709
|
0 |
0 |
if $$self{'debug'} |
1722
|
0 |
2 |
unless $res |
1725
|
1 |
1 |
if ($number == 1) { } |
|
1 |
0 |
elsif ($number == 0) { } |
1743
|
0 |
2 |
unless ($$self{'api'}{'config'}{'api_url'} =~ m[
http://meta.wikimedia.org/w/api.php
|
https://secure.wikimedia.org/wikipedia/meta/w/api.php
]x) |
1751
|
0 |
0 |
if $$self{'debug'} |
1764
|
0 |
2 |
unless $res |
1766
|
1 |
1 |
if ($number == 1) { } |
|
1 |
0 |
elsif ($number == 0) { } |
1781
|
1 |
2 |
if (ref $page eq 'ARRAY') |
1792
|
0 |
3 |
unless $res |
1800
|
3 |
1 |
if (@$protection == 0) |
1806
|
2 |
1 |
if (scalar keys %$out_data == 1) { } |
1827
|
0 |
0 |
if (ref $rcid eq 'ARRAY') { } |
1842
|
0 |
0 |
unless $token_res |
1843
|
0 |
0 |
if (exists $$token_res{'warnings'} and $$token_res{'warnings'}{'recentchanges'}{'*'} eq q[Action 'patrol' is not allowed for the current user]) |
1861
|
0 |
0 |
if not $res or $$self{'error'}{'details'} and $$self{'error'}{'details'} =~ /^(?:permissiondenied|badtoken)/ |
1876
|
0 |
0 |
if (ref $user eq 'ARRAY') |
1886
|
0 |
0 |
if ($user =~ /:/) |
1899
|
0 |
0 |
unless $res |
1911
|
0 |
0 |
unless defined $$options{'max'} |
1912
|
0 |
0 |
if $$options{'max'} == 0 |
1921
|
0 |
0 |
unless $res |
1922
|
0 |
0 |
unless ref $res |
1926
|
0 |
0 |
if exists $$page{'top'} |
1939
|
1 |
2 |
if (ref $user eq 'ARRAY') { } |
1945
|
0 |
3 |
if ref $ns eq 'ARRAY' |
1948
|
3 |
0 |
unless defined $$opts{'max'} |
1949
|
0 |
3 |
if $$opts{'max'} == 0 |
1951
|
1 |
2 |
defined $ns ? : |
1960
|
0 |
3 |
unless $$res[0] |
1961
|
0 |
3 |
unless ref $res |
1972
|
0 |
0 |
if (not defined $data and defined $$args{'file'}) |
1973
|
0 |
0 |
unless open my $in, '<:raw', $$args{'file'} |
1975
|
0 |
0 |
unless (defined $data) |
1980
|
0 |
0 |
unless (defined $$args{'file'} or defined $$args{'title'}) |
2002
|
0 |
0 |
unless (defined $url) |
2037
|
0 |
1 |
unless $res |
2040
|
0 |
1 |
unless $$res_user{'name'} eq $user |
2065
|
0 |
9 |
unless my $res = $$self{'api'}->api({'action', 'query', 'titles', $page, 'prop', 'info|revisions', 'intoken', $type}) |
2083
|
0 |
3 |
if $$self{'debug'} |
2087
|
0 |
3 |
defined $error && ref $error eq 'HASH' && exists $$error{'code'} && exists $$error{'details'} ? : |
2100
|
0 |
1 |
if $$self{'debug'} > 1 |
2107
|
0 |
1 |
unless my $res = $$self{'api'}->api({'action', 'query', 'meta', 'userinfo'}) |
2125
|
0 |
0 |
unless $res |
2126
|
0 |
0 |
unless $$res{'query'} |
2127
|
0 |
0 |
unless $$res{'query'}{'userinfo'} |
2128
|
0 |
0 |
unless $$res{'query'}{'userinfo'}{'name'} |
2134
|
0 |
0 |
if $is ne $ought |
2136
|
0 |
0 |
unless $$res{'query'}{'userinfo'}{'rights'} |
2140
|
0 |
0 |
if ($right eq 'bot') |
2146
|
0 |
0 |
unless $$res{'query'}{'userinfo'}{'groups'} |
2149
|
0 |
0 |
if ($group eq 'sysop') |
2154
|
0 |
0 |
unless ($has_bot and not $is_sysop) |
2155
|
0 |
0 |
if $$self{'debug'} > 1 |
2157
|
0 |
0 |
unless $$self{'assert'} |
2166
|
0 |
1 |
unless $res |
2173
|
299 |
295 |
if (ref $hashref ne 'HASH') |
2174
|
1 |
298 |
if ($hashref eq 'specials') |
2177
|
35 |
51 |
if exists $$special{'private'} or exists $$special{'fishbowl'} |
2207
|
1 |
0 |
if ($response->is_success) |
2233
|
11 |
4 |
if exists $$self{'ns_data'} |
2247
|
1 |
1 |
if exists $$self{'ns_alias_data'} |