Geo-Google-MapObject
view release on metacpan or search on metacpan
t/autozoom.t view on Meta::CPAN
#!perl
use strict;
use warnings;
use Test::More tests => 42;
use Geo::Google::MapObject;
use Test::Differences;
use Test::Deep;
use JSON;
use HTML::Template::Pluggable;
use HTML::Template::Plugin::Dot;
our $template =<<EOS;
<html>
<head>
<title>Test</title>
<script src="<TMPL_VAR NAME="map.javascript_url">" type="text/javascript"></script>
</head>
<body>
<img alt="TEST" src="<TMPL_VAR NAME="map.static_map_url">" width="<TMPL_VAR NAME="map.width">" height="<TMPL_VAR NAME="map.height">"/>
<TMPL_IF NAME="map.markers">
<table>
<TMPL_LOOP NAME="map.markers">
<tr><td><TMPL_VAR NAME="this.location"></td></tr>
</TMPL_LOOP>
</table>
</TMPL_IF>
</body>
</html>
EOS
;
{
my $map = Geo::Google::MapObject->new ( key=>'api1', size=>"512x512", autozoom=>21, markers=>[{location=>"58.222128,-5.316499"}]);
ok($map, "map created");
ok($map->static_map_url eq "http://maps.google.com/maps/api/staticmap?center=58.222128,-5.316499&zoom=21&mobile=false&key=api1&sensor=false&size=512x512&markers=58.222128,-5.316499", "static_map_url");
ok($map->javascript_url eq "http://maps.google.com/maps?file=api&v=2&key=api1&sensor=false", "javascript_url");
is_json($map->json, '{"sensor":"false","zoom":"21","markers":[{"location": "58.222128,-5.316499"}],"mobile":"false","center":"58.222128,-5.316499","size":{"width":"512","height":"512"}}', "json");
ok($map->width == 512, "width");
ok($map->height == 512, "height");
}
{
my $map = Geo::Google::MapObject->new ( key=>'api1', size=>"512x512", autozoom=>21, markers=>[{location=>"58.222128,-5.316499"},{location=>"58.22211,-5.315194"}]);
ok($map, "map created");
like($map->static_map_url, qr"^http://maps\.google\.com/maps/api/staticmap?center=58\.222119001\d+,-5\.315846\d+&zoom=16&mobile=false&key=api1&sensor=false&size=512x512&markers=58\.222128,-5\.316499|58\.22211,-5\.315194$", ...
ok($map->javascript_url eq "http://maps.google.com/maps?file=api&v=2&key=api1&sensor=false", "javascript_url");
is_json($map->json, '{"zoom":"16","sensor":"false","markers":[{"location":"58.222128,-5.316499"},{"location":"58.22211,-5.315194"}],"mobile":"false","size":{"width":"512","height":"512"},"center":"58.2221190016633,-5.31584649983455"}', "json");
ok($map->width == 512, "width");
ok($map->height == 512, "height");
}
{
my $map = Geo::Google::MapObject->new ( key=>'api1', size=>"512x512", autozoom=>21, markers=>[{location=>"58.222128,-5.316499"},{location=>"58.22211,-5.315194"},{location=>"58.198937,-5.20546"}]);
ok($map, "map created");
like($map->static_map_url, qr"^http://maps\.google\.com/maps/api/staticmap?center=58\.21053\d+,-5\.26063523\d+&zoom=9&mobile=false&key=api1&sensor=false&size=512x512&markers=58\.222128,-5\.316499|58\.22211,-5\.315194|58\.19...
ok($map->javascript_url eq "http://maps.google.com/maps?file=api&v=2&key=api1&sensor=false", "javascript_url");
is_json($map->json, '{"zoom":"9","sensor":"false","markers":[{"location":"58.222128,-5.316499"},{"location":"58.22211,-5.315194"},{"location":"58.198937,-5.20546"}],"mobile":"false","size":{"width":"512","height":"512"},"center":"58.210539904431,-...
ok($map->width == 512, "width");
ok($map->height == 512, "height");
}
{
my $map = Geo::Google::MapObject->new ( key=>'api1', size=>"512x512", autozoom=>21, markers=>[{location=>"-16.807513,179.991839"},{location=>"-16.795715,-179.996503"},{location=>"-16.800433,179.999099"}]);
ok($map, "map created");
like($map->static_map_url, qr"^http://maps\.google\.com/maps/api/staticmap?center=-16\.801614\d+,179\.997668\d+&zoom=11&mobile=false&key=api1&sensor=false&size=512x512&markers=-16\.807513,179\.991839|-16\.795715,-179\.99650...
( run in 0.540 second using v1.01-cache-2.11-cpan-39bf76dae61 )