diff options
author | Dave Arter <davea@mysociety.org> | 2015-06-23 15:55:27 +0100 |
---|---|---|
committer | Dave Arter <davea@mysociety.org> | 2015-07-23 11:46:32 +0100 |
commit | 65e46275d6cd821229ba83ff970d77641261adfe (patch) | |
tree | 32c9ca75f08cadce214617850bcdfb834ee5bf41 /t | |
parent | 9fde2578c36eb81f74d3d4829aa8f5fcd3969977 (diff) |
[Oxfordshire] Add status/category filtering to map pages
Diffstat (limited to 't')
-rw-r--r-- | t/cobrand/oxfordshire.t | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/t/cobrand/oxfordshire.t b/t/cobrand/oxfordshire.t new file mode 100644 index 000000000..d9f880d07 --- /dev/null +++ b/t/cobrand/oxfordshire.t @@ -0,0 +1,50 @@ +use strict; +use warnings; +use Test::More; + +use FixMyStreet::TestMech; +my $mech = FixMyStreet::TestMech->new; + +subtest 'check /ajax defaults to open reports only' => sub { + my $categories = [ 'Bridges', 'Fences', 'Manhole' ]; + my $params = { + postcode => 'OX28 4DS', + latitude => 51.7847208192, + longitude => -1.49445264029, + }; + my $bbox = ($params->{longitude} - 0.01) . ',' . ($params->{latitude} - 0.01) + . ',' . ($params->{longitude} + 0.01) . ',' . ($params->{latitude} + 0.01); + + # Create one open and one fixed report in each category + foreach my $category ( @$categories ) { + foreach my $state ( 'confirmed', 'fixed' ) { + my %report_params = ( + %$params, + category => $category, + state => $state, + ); + $mech->create_problems_for_body( 1, 2237, 'Around page', \%report_params ); + } + } + + FixMyStreet::override_config { + ALLOWED_COBRANDS => [ { 'oxfordshire' => '.' } ], + MAPIT_URL => 'http://mapit.mysociety.org/', + }, sub { + my $json = $mech->get_ok_json( '/ajax?status=all&bbox=' . $bbox ); + my $pins = $json->{pins}; + is scalar @$pins, 6, 'correct number of reports created'; + + $json = $mech->get_ok_json( '/ajax?bbox=' . $bbox ); + $pins = $json->{pins}; + is scalar @$pins, 3, 'correct number of reports returned with no filters'; + + $json = $mech->get_ok_json( '/ajax?filter_category=Fences&bbox=' . $bbox ); + $pins = $json->{pins}; + is scalar @$pins, 1, 'only one Fences report by default'; + } +}; + +# Clean up +$mech->delete_problems_for_body( 2237 ); +done_testing(); |