예제 #1
0
    def test_mosaic(self):
        tmpdir = tempfile.mkdtemp()
        src = raster_file('relief_san_andres.tif')
        fmt = 'relief_san_andres_%s.tif'
        paths = []
        for year in range(2000, 2010):
            path = os.path.join(tmpdir, fmt % year)
            shutil.copy(src, path)
            paths.append(path)
        zip_file = _util.create_zip(paths)
        try:
            layer_name = self.run_single_upload(raster=zip_file, mosaic=True)
            # Avoid Layer DELETE on tearDown
            self.expected_layer = None
        finally:
            os.unlink(zip_file)

        lyr = gscat.get_layer(layer_name)
        self.assertTrue(lyr is not None,
                        msg='Expected to find layer "%s" in the catalog' %
                        layer_name)

        with self.assertRaises(ValueError):
            # Importer creates a Style without Title
            get_wms(layer_name)
예제 #2
0
    def test_mosaic(self):
        tmpdir = tempfile.mkdtemp()
        src = raster_file('relief_san_andres.tif')
        fmt = 'relief_san_andres_%s.tif'
        paths = []
        for year in range(2000, 2010):
            path = os.path.join(tmpdir, fmt % year)
            shutil.copy(src, path)
            paths.append(path)
        zip_file = _util.create_zip(paths)
        try:
            layer_name = self.run_single_upload(raster=zip_file, mosaic=True)
            # Avoid Layer DELETE on tearDown
            self.expected_layer = None
        finally:
            os.unlink(zip_file)

        lyr = gscat.get_layer(layer_name)
        self.assertTrue(lyr is not None,
                        msg='Expected to find layer "%s" in the catalog' %
                        layer_name)
        wms = get_wms(layer_name)
        # Importer now creates a default style named importer_{layer_name}
        # get_wms(layer_name) now returns a value
        self.assertTrue(wms is not None,
                             msg='Expected layer "%s" in the WMS GetCap' %
                             layer_name)
예제 #3
0
 def test_upload_with_bad_files(self):
     shp_files = _util.shp_files(vector_file('san_andres_y_providencia_poi.shp'))
     _, junk = tempfile.mkstemp(suffix='.junk')
     try:
         shp_files.append(junk)
         zip_file = _util.create_zip(shp_files)
         self.run_single_upload(vector=zip_file,
             expected_layer='importer:san_andres_y_providencia_poi')
     finally:
         os.unlink(junk)
         os.unlink(zip_file)
예제 #4
0
 def test_mosaic(self):
     tmpdir = tempfile.mkdtemp()
     src = raster_file('relief_san_andres.tif')
     fmt = 'relief_san_andres_%s.tif'
     paths = []
     for year in range(2000,2010):
         path = os.path.join(tmpdir, fmt % year)
         shutil.copy(src, path)
         paths.append(path)
     zip_file = _util.create_zip(paths)
     try:
         layer_name = self.run_single_upload(raster=zip_file, mosaic=True)
     finally:
         os.unlink(zip_file)
     wms = get_wms(layer_name)
예제 #5
0
    def test_mosaic_granule_update(self):
        tmpdir = tempfile.mkdtemp()
        src = raster_file('relief_san_andres.tif')
        fmt = 'relief_san_andres_%s.tif'
        paths = []
        for year in range(2000, 2010):
            path = os.path.join(tmpdir, fmt % year)
            shutil.copy(src, path)
            paths.append(path)
        zip_file = _util.create_zip(paths)
        try:
            layer_name = self.run_single_upload(raster=zip_file, mosaic=True)
            # Avoid Layer DELETE on tearDown
            self.expected_layer = None
        finally:
            os.unlink(zip_file)

        lyr = gscat.get_layer(layer_name)
        self.assertTrue(lyr is not None,
                        msg='Expected to find layer "%s" in the catalog' %
                        layer_name)

        # Add a new granule to the existing mosaic
        path = os.path.join(tmpdir, fmt % 2011)
        shutil.copy(src, path)
        workspace = layer_name.split(":")[0]
        target_store = layer_name.split(":")[1]
        layer_updated_name = self.run_single_upload(raster=path,
                                                    mosaic=True,
                                                    workspace=workspace,
                                                    target_store=target_store,
                                                    update_mode='APPEND',
                                                    expected_layer=layer_name)

        self.assertTrue(layer_name == layer_updated_name,
                        msg='Expected layer "%s" to be updated' % layer_name)