]> err.no Git - libchamplain/commitdiff
Test the contents of a Champlain::MapSourceDesc
authorEmmanuel Rodriguez <emmanuel.rodriguez@gmail.com>
Wed, 6 May 2009 14:06:16 +0000 (16:06 +0200)
committerPierre-Luc Beaudoin <pierre-luc@pierlux.com>
Thu, 7 May 2009 12:58:12 +0000 (08:58 -0400)
bindings/perl/Champlain/t/ChamplainMapSourceFactory.t

index 5f285a7a5efb55248ddffb16f372746d14842781..f1636876f357e3af28e0c7b77b76cf63d8e3a900 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Clutter::TestHelper tests => 22;
+use Clutter::TestHelper tests => 31;
 
 use Champlain ':coords';
 
@@ -59,8 +59,27 @@ sub test_map_factory {
                "Maps for Free Relief"
        );
        
+       # Get the maps available
        my @maps = $factory->get_list();
        ok(@maps >= 5, "Maps factory has the default maps");
+       
+       # Find the OAM map and check that the it's properly described
+       my @found = grep { $_->{id} eq Champlain::MapSourceFactory->OAM } @maps;
+       is(scalar(@found), 1);
+       if (@found) {
+               my ($oam_map) = @found;
+               isa_ok($oam_map, 'Champlain::MapSourceDesc');
+               is($oam_map->{id}, Champlain::MapSourceFactory->OAM);
+               is($oam_map->{name}, 'OpenAerialMap');
+               is($oam_map->{license}, "(CC) BY 3.0 OpenAerialMap contributor");
+               is($oam_map->{license_uri}, 'http://creativecommons.org/licenses/by/3.0/');
+               is($oam_map->{min_zoom_level}, 0);
+               is($oam_map->{max_zoom_level}, 17);
+               is($oam_map->{projection}, 'mercator');
+       }
+       else {
+               fail("Can't test a Champlain::MapSourceDesc without a map description") for 1 .. 8;
+       }
 }