diff options
author | Matthew Somerville <matthew-github@dracos.co.uk> | 2016-08-24 11:59:34 +0100 |
---|---|---|
committer | Matthew Somerville <matthew-github@dracos.co.uk> | 2016-08-24 12:00:24 +0100 |
commit | 669fd23dbb7870fe20284f3e029a1fe6da09625b (patch) | |
tree | 7ae59fb51ccee9cd75407fa63c16123548f05dcf | |
parent | eaa2480195d27ff3f1efd325b149da0668c63708 (diff) |
Pass back Open311 request through send_reports for tests.
-rw-r--r-- | perllib/FixMyStreet/DB/ResultSet/Problem.pm | 2 | ||||
-rw-r--r-- | perllib/FixMyStreet/Script/Reports.pm | 21 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/Open311.pm | 7 |
3 files changed, 20 insertions, 10 deletions
diff --git a/perllib/FixMyStreet/DB/ResultSet/Problem.pm b/perllib/FixMyStreet/DB/ResultSet/Problem.pm index 488030928..9ce7da1c0 100644 --- a/perllib/FixMyStreet/DB/ResultSet/Problem.pm +++ b/perllib/FixMyStreet/DB/ResultSet/Problem.pm @@ -235,7 +235,7 @@ sub categories_summary { sub send_reports { my ( $rs, $site_override ) = @_; require FixMyStreet::Script::Reports; - FixMyStreet::Script::Reports::send($site_override); + return FixMyStreet::Script::Reports::send($site_override); } 1; diff --git a/perllib/FixMyStreet/Script/Reports.pm b/perllib/FixMyStreet/Script/Reports.pm index 311d8fec4..a51923456 100644 --- a/perllib/FixMyStreet/Script/Reports.pm +++ b/perllib/FixMyStreet/Script/Reports.pm @@ -23,6 +23,7 @@ sub send(;$) { # Set up site, language etc. my ($verbose, $nomail, $debug_mode) = CronFns::options(); + my $test_data; my $base_url = FixMyStreet->config('BASE_URL'); my $site = $site_override || CronFns::site($base_url); @@ -205,18 +206,18 @@ sub send(;$) { for my $sender ( keys %reporters ) { debug_print("sending using " . $sender, $row->id) if $debug_mode; - $result *= $reporters{ $sender }->send( $row, \%h ); - if ( $reporters{ $sender }->unconfirmed_counts) { - foreach my $e (keys %{ $reporters{ $sender }->unconfirmed_counts } ) { - foreach my $c (keys %{ $reporters{ $sender }->unconfirmed_counts->{$e} }) { - $notgot{$e}{$c} += $reporters{ $sender }->unconfirmed_counts->{$e}{$c}; + $sender = $reporters{$sender}; + $result *= $sender->send( $row, \%h ); + if ( $sender->unconfirmed_counts) { + foreach my $e (keys %{ $sender->unconfirmed_counts } ) { + foreach my $c (keys %{ $sender->unconfirmed_counts->{$e} }) { + $notgot{$e}{$c} += $sender->unconfirmed_counts->{$e}{$c}; } } - %note = ( - %note, - %{ $reporters{ $sender }->unconfirmed_notes } - ); + %note = (%note, %{ $sender->unconfirmed_notes }); } + $test_data->{test_req_used} = $sender->open311_test_req_used + if FixMyStreet->test_mode && $sender->can('open311_test_req_used'); } unless ($result) { @@ -272,6 +273,8 @@ sub send(;$) { print "The following reports had problems sending:\n$sending_errors"; } } + + return $test_data; } sub _send_report_sent_email { diff --git a/perllib/FixMyStreet/SendReport/Open311.pm b/perllib/FixMyStreet/SendReport/Open311.pm index bf5ed3e30..9dfd3e0ea 100644 --- a/perllib/FixMyStreet/SendReport/Open311.pm +++ b/perllib/FixMyStreet/SendReport/Open311.pm @@ -13,6 +13,10 @@ Readonly::Scalar my $COUNCIL_ID_OXFORDSHIRE => 2237; Readonly::Scalar my $COUNCIL_ID_WARWICKSHIRE => 2243; Readonly::Scalar my $COUNCIL_ID_GREENWICH => 2493; +has open311_test_req_used => ( + is => 'rw', +); + sub send { my $self = shift; my ( $row, $h ) = @_; @@ -133,6 +137,9 @@ sub send { } my $resp = $open311->send_service_request( $row, $h, $contact->email ); + if (FixMyStreet->test_mode) { + $self->open311_test_req_used($open311->test_req_used); + } # make sure we don't save user changes from above $row->discard_changes() if $revert; |