diff options
Diffstat (limited to 't/cobrand/closest.t')
-rw-r--r-- | t/cobrand/closest.t | 41 |
1 files changed, 16 insertions, 25 deletions
diff --git a/t/cobrand/closest.t b/t/cobrand/closest.t index 43b36f608..36fe78a01 100644 --- a/t/cobrand/closest.t +++ b/t/cobrand/closest.t @@ -1,9 +1,5 @@ -use strict; -use warnings; +use t::Mock::Bing; -use Test::More; - -use mySociety::Locale; use FixMyStreet::DB; use FixMyStreet::TestMech; @@ -11,8 +7,6 @@ my $mech = FixMyStreet::TestMech->new; use_ok 'FixMyStreet::Cobrand'; -mySociety::Locale::gettext_domain( 'FixMyStreet' ); - my $c = FixMyStreet::Cobrand::UK->new(); my $user = @@ -31,7 +25,7 @@ my $dt = DateTime->new( my $report = FixMyStreet::DB->resultset('Problem')->find_or_create( { - postcode => 'SW1A 1AA', + postcode => 'E142DN', bodies_str => '2504', areas => ',105255,11806,11828,2247,2504,', category => 'Other', @@ -47,8 +41,8 @@ my $report = FixMyStreet::DB->resultset('Problem')->find_or_create( cobrand => 'default', cobrand_data => '', send_questionnaire => 't', - latitude => '51.5016605453401', - longitude => '-0.142497580865087', + latitude => 51.508536, + longitude => 0.000001, user_id => $user->id, } ); @@ -56,33 +50,30 @@ my $report_id = $report->id; ok $report, "created test report - $report_id"; $report->geocode( undef ); - ok !$report->geocode, 'no geocode entry for report'; -my $near = $c->find_closest( $report->latitude, $report->longitude, $report ); - -SKIP: { - if (!FixMyStreet->config('BING_MAPS_API_KEY')) { - skip 'No Bing Maps key', 0; - } - +FixMyStreet::override_config { + MAPIT_URL => 'http://mapit.uk/', + BING_MAPS_API_KEY => 'test', +}, sub { + my $near = $c->find_closest($report); ok $report->geocode, 'geocode entry added to report'; ok $report->geocode->{resourceSets}, 'geocode entry looks like right sort of thing'; like $near, qr/Constitution Hill/i, 'nearest street looks right'; - like $near, qr/Nearest postcode .*: SW1A 1AA/i, 'nearest postcode looks right'; + like $near, qr/Nearest postcode .*: E14 2DN/i, 'nearest postcode looks right'; - $near = $c->find_closest_address_for_rss( $report->latitude, $report->longitude, $report ); + $near = $c->find_closest_address_for_rss($report); like $near, qr/Constitution Hill/i, 'nearest street for RSS looks right'; unlike $near, qr/Nearest postcode/i, 'no nearest postcode in RSS text'; $report->geocode( undef ); - $near = $c->find_closest_address_for_rss( $report->latitude, $report->longitude, $report ); + $near = $c->find_closest_address_for_rss($report); ok !$near, 'no closest address for RSS if not cached'; -} +}; -# all done -$mech->delete_user( $user ); -done_testing(); +END { + done_testing(); +} |