예제 #1
0
파일: tests.py 프로젝트: 3Geo/landez
 def test_download_tile(self):
     output = '/tmp/tile.png'
     if os.path.exists(output): os.remove(output)
     
     # Unknown URL keyword
     mb = TilesManager()
     mb.tiles_url = "http://{X}.tile.openstreetmap.org/{z}/{x}/{y}.png"
     self.assertRaises(DownloadError, mb.download_tile, output, 1, 1, 1)
     self.assertFalse(os.path.exists(output))
     # With subdomain keyword
     mb.tiles_url = "http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
     mb.download_tile(output, 1, 1, 1)
     self.assertTrue(os.path.exists(output))
     # No subdomain keyword
     mb.tiles_url = "http://tile.cloudmade.com/f1fe9c2761a15118800b210c0eda823c/1/{size}/{z}/{x}/{y}.png"
     mb.download_tile(output, 1, 1, 1)
     self.assertTrue(os.path.exists(output))
     # Subdomain in available range
     mb.tiles_url = "http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
     mb.tiles_subdomains = list("abc")
     for y in range(3):
         mb.download_tile(output, 10, 0, y)
         self.assertTrue(os.path.exists(output))
     # Subdomain out of range
     mb.tiles_subdomains = list("abcz")
     self.assertRaises(DownloadError, mb.download_tile, output, 10, 1, 2)
     
     # Clean out
     os.remove(output)