diff options
Diffstat (limited to 't/map')
-rw-r--r-- | t/map/cheshireeast.t | 18 | ||||
-rw-r--r-- | t/map/mastermap.t | 22 | ||||
-rw-r--r-- | t/map/tests.t | 15 |
3 files changed, 50 insertions, 5 deletions
diff --git a/t/map/cheshireeast.t b/t/map/cheshireeast.t new file mode 100644 index 000000000..a90a1606e --- /dev/null +++ b/t/map/cheshireeast.t @@ -0,0 +1,18 @@ +use Test::More; +use FixMyStreet::Map::CheshireEast; + +# https://maps-cache.cheshiresharedservices.gov.uk/maps/?wmts/CE_OS_AllBasemaps_COLOUR/oscce_grid/10/10187/8134.jpeg&KEY=3a3f5c60eca1404ea114e6941c9d3895 +my $tiles = FixMyStreet::Map::CheshireEast->map_tiles(x_tile => 10187, y_tile => 8134, zoom_act => 10); +$tiles = [ map { m{(\d+/\d+/\d+)}; $1; } @$tiles ]; +is_deeply $tiles, [ '10/10186/8133', '10/10187/8133', '10/10186/8134', '10/10187/8134' ]; + +use Data::Dumper; +my ($x, $y) = FixMyStreet::Map::CheshireEast->latlon_to_tile_with_adjust(53.150624, -2.386809, 10); +is $x, 10187; +is $y, 8134; + +my ($lat, $lon) = FixMyStreet::Map::CheshireEast->tile_to_latlon(10187, 8134, 10); +is sprintf("%.6f", $lat), 53.150624; +is sprintf("%.6f", $lon), -2.386809; + +done_testing(); diff --git a/t/map/mastermap.t b/t/map/mastermap.t new file mode 100644 index 000000000..79522cdea --- /dev/null +++ b/t/map/mastermap.t @@ -0,0 +1,22 @@ +use FixMyStreet::TestMech; + +use FixMyStreet::Map::MasterMap; + +subtest 'correct map tiles used' => sub { + my %test = ( + 16 => [ '-', 'oml' ], + 20 => [ '.', 'mastermap-staging' ] + ); + foreach my $zoom (qw(16 20)) { + my $tiles = FixMyStreet::Map::MasterMap->map_tiles(x_tile => 123, y_tile => 456, zoom_act => $zoom); + my ($sep, $lyr) = @{$test{$zoom}}; + is_deeply $tiles, [ + "//a${sep}tilma.mysociety.org/$lyr/$zoom/122/455.png", + "//b${sep}tilma.mysociety.org/$lyr/$zoom/123/455.png", + "//c${sep}tilma.mysociety.org/$lyr/$zoom/122/456.png", + "//tilma.mysociety.org/$lyr/$zoom/123/456.png", + ]; + } +}; + +done_testing(); diff --git a/t/map/tests.t b/t/map/tests.t index 728aa5125..7d7efab22 100644 --- a/t/map/tests.t +++ b/t/map/tests.t @@ -2,16 +2,21 @@ use FixMyStreet::Map; use Test::More; my $requires = { - 'BathNES' => 'bathnes/assets.js', 'Bing' => 'map-bing-ol.js', - 'Bristol' => 'bristol/assets.js', - 'Bromley' => 'bromley/assets.js', - 'Buckinghamshire' => 'buckinghamshire/assets.js', + 'Bristol' => 'map-wmts-bristol.js', + 'Bromley' => 'map-fms.js', + 'Buckinghamshire' => 'map-wmts-buckinghamshire.js', 'Lincolnshire' => 'lincolnshire/assets.js', + 'CheshireEast' => 'map-cheshireeast.js', 'FMS' => 'map-fms.js', 'Google' => 'map-google.js', 'GoogleOL' => 'map-google-ol.js', + 'HighwaysEngland' => 'map-fms.js', + 'Hounslow' => 'map-wmts-hounslow.js', + 'IsleOfWight' => 'map-wmts-isleofwight.js', 'OSM' => 'OpenStreetMap.js', + 'MasterMap' => 'map-mastermap.js', + 'Northamptonshire' => 'map-wms-northamptonshire.js', 'CycleMap' => 'OpenStreetMap.js', 'MapQuest' => 'OpenStreetMap.js', 'StreetView' => 'map-streetview.js', @@ -20,7 +25,7 @@ my $requires = { }; foreach (FixMyStreet::Map->maps) { - next if /WMTSBase/; # Only its subclasses have JS + next if /WMTSBase|UKCouncilWMTS|WMSBase|WMXBase/; # Only its subclasses have JS my $js = $_->map_javascript; my $test_file = $js->[-1]; s/.*:://; |