| blib/lib/Plack/Middleware/Antibot/FakeField.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| statement | 26 | 26 | 100.0 |
| branch | 4 | 4 | 100.0 |
| condition | 6 | 7 | 85.7 |
| subroutine | 6 | 6 | 100.0 |
| pod | 2 | 2 | 100.0 |
| total | 44 | 45 | 97.7 |
| line | stmt | bran | cond | sub | pod | time | code |
|---|---|---|---|---|---|---|---|
| 1 | package Plack::Middleware::Antibot::FakeField; | ||||||
| 2 | |||||||
| 3 | 2 | 2 | 64666 | use strict; | |||
| 2 | 4 | ||||||
| 2 | 58 | ||||||
| 4 | 2 | 2 | 8 | use warnings; | |||
| 2 | 2 | ||||||
| 2 | 62 | ||||||
| 5 | |||||||
| 6 | 2 | 2 | 7 | use parent 'Plack::Middleware::Antibot::FilterBase'; | |||
| 2 | 2 | ||||||
| 2 | 8 | ||||||
| 7 | |||||||
| 8 | 2 | 2 | 1097 | use Plack::Request; | |||
| 2 | 56129 | ||||||
| 2 | 357 | ||||||
| 9 | |||||||
| 10 | sub new { | ||||||
| 11 | 9 | 9 | 1 | 5735 | my $self = shift->SUPER::new(@_); | ||
| 12 | 9 | 15 | my (%params) = @_; | ||||
| 13 | |||||||
| 14 | 9 | 100 | 72 | $self->{field_name} = $params{field_name} || 'antibot_fake_field'; | |||
| 15 | 9 | 100 | 37 | $self->{score} = $params{score} || 0.8; | |||
| 16 | |||||||
| 17 | 9 | 29 | return $self; | ||||
| 18 | } | ||||||
| 19 | |||||||
| 20 | sub execute { | ||||||
| 21 | 11 | 11 | 1 | 10304 | my $self = shift; | ||
| 22 | 11 | 13 | my ($env) = @_; | ||||
| 23 | |||||||
| 24 | 11 | 100 | 28 | if ($env->{REQUEST_METHOD} eq 'POST') { | |||
| 25 | 7 | 38 | my $value = Plack::Request->new($env)->param($self->{field_name}); | ||||
| 26 | 7 | 100 | 66 | 3301 | if (defined $value && length $value) { | ||
| 27 | 6 | 18 | $env->{'plack.antibot.fakefield.detected'}++; | ||||
| 28 | } | ||||||
| 29 | } | ||||||
| 30 | else { | ||||||
| 31 | 4 | 11 | $env->{'plack.antibot.fakefield.field_name'} = $self->{field_name}; | ||||
| 32 | 4 | 15 | $env->{'plack.antibot.fakefield.html'} = <<"EOF"; | ||||
| 33 | |||||||
| 34 | |||||||
| 35 | |||||||
| 36 | |||||||
| 37 | EOF | ||||||
| 38 | } | ||||||
| 39 | |||||||
| 40 | 11 | 24 | return; | ||||
| 41 | } | ||||||
| 42 | |||||||
| 43 | 1; | ||||||
| 44 | __END__ |