aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Somerville <matthew-github@dracos.co.uk>2017-07-17 15:47:12 +0100
committerMatthew Somerville <matthew-github@dracos.co.uk>2017-07-17 18:16:51 +0100
commit858eadef26b9b302f8997eb2fbe3f6a859ae6588 (patch)
tree394066971d88140a20d74fec1c02f185be912e03
parent687c03c2b93e995e468297488b9f79d6a06fd3e0 (diff)
Use DateTime in update-all-reports for tests.
The test fixes DateTime, which wouldn't affect direct database queries.
-rwxr-xr-xperllib/FixMyStreet/Script/UpdateAllReports.pm14
1 files changed, 8 insertions, 6 deletions
diff --git a/perllib/FixMyStreet/Script/UpdateAllReports.pm b/perllib/FixMyStreet/Script/UpdateAllReports.pm
index 0af7be9ba..5751e05ac 100755
--- a/perllib/FixMyStreet/Script/UpdateAllReports.pm
+++ b/perllib/FixMyStreet/Script/UpdateAllReports.pm
@@ -153,14 +153,16 @@ sub generate_dashboard {
);
$data{last_seven_days} = \%last_seven_days;
+ my $dtf = FixMyStreet::DB->storage->datetime_parser;
+ my $eight_ago = $dtf->format_datetime(DateTime->now->subtract(days => 8));
%problems_reported_by_period = stuff_by_day_or_year('day',
'Problem',
state => [ FixMyStreet::DB::Result::Problem->visible_states() ],
- confirmed => { '>=', \"current_timestamp-'8 days'::interval" },
+ confirmed => { '>=', $eight_ago },
);
%problems_fixed_by_period = stuff_by_day_or_year('day',
'Comment',
- confirmed => { '>=', \"current_timestamp-'8 days'::interval" },
+ confirmed => { '>=', $eight_ago },
-or => [
problem_state => [ FixMyStreet::DB::Result::Problem->fixed_states() ],
mark_fixed => 1,
@@ -168,7 +170,7 @@ sub generate_dashboard {
);
my %problems_updated_by_period = stuff_by_day_or_year('day',
'Comment',
- confirmed => { '>=', \"current_timestamp-'8 days'::interval" },
+ confirmed => { '>=', $eight_ago },
);
my $date = DateTime->today->subtract(days => 7);
@@ -218,12 +220,12 @@ sub generate_dashboard {
@top_five_bodies = @top_five_bodies[0..4] if @top_five_bodies > 5;
-
+ my $week_ago = $dtf->format_datetime(DateTime->now->subtract(days => 7));
my $last_seven_days = FixMyStreet::DB->resultset("Problem")->search({
- confirmed => { '>=', \"current_timestamp-'7 days'::interval" },
+ confirmed => { '>=', $week_ago },
})->count;
my @top_five_categories = FixMyStreet::DB->resultset("Problem")->search({
- confirmed => { '>=', \"current_timestamp-'7 days'::interval" },
+ confirmed => { '>=', $week_ago },
category => { '!=', 'Other' },
}, {
select => [ 'category', { count => 'id' } ],