def ogr_georss_12(): if not gdaltest.georss_read_support: return 'skip' open('tmp/broken.rss', 'wt').write('<?xml version="1.0"?><rss><item><a></item></rss>') gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) try: ds = ogr.Open('tmp/broken.rss') except: ds = None gdal.PopErrorHandler() if ds is not None: return 'fail' open('tmp/broken.rss', 'wt').write('<?xml version="1.0"?><rss><channel><item><georss:box>49 2 49.5</georss:box></item></channel></rss>') ds = ogr.Open('tmp/broken.rss') gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) feat = ds.GetLayer(0).GetNextFeature() gdal.PopErrorHandler() if feat.GetGeometryRef() is not None: return 'fail' ds.Destroy() open('tmp/broken.rss', 'wt').write('<?xml version="1.0"?><rss><channel><item><georss:where><gml:LineString><gml:posList>48 2 48.1 2.1 48</gml:posList></gml:LineString></georss:where></item></channel></rss>') ds = ogr.Open('tmp/broken.rss') gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) feat = ds.GetLayer(0).GetNextFeature() gdal.PopErrorHandler() if feat.GetGeometryRef() is not None: return 'fail' ds.Destroy() return 'success'
def ogr_geom_build_from_edges_3(): if gdaltest.have_geos == 0: return 'skip' src_geom = ogr.CreateGeometryFromWkt('POINT (0 1)') try: gdal.PushErrorHandler('CPLQuietErrorHandler') poly = ogr.BuildPolygonFromEdges(src_geom) gdal.PopErrorHandler() if poly is not None: return 'fail' except: pass src_geom = ogr.CreateGeometryFromWkt( 'GEOMETRYCOLLECTION (LINESTRING(0 1,2 3),POINT(0 1),LINESTRING(0 1,-2 3),LINESTRING(-2 3,2 3))' ) try: gdal.PushErrorHandler('CPLQuietErrorHandler') poly = ogr.BuildPolygonFromEdges(src_geom) gdal.PopErrorHandler() if poly is not None: return 'fail' except: pass return 'success'
def rasterio_5(): ds = gdal.Open('data/byte.tif') for obj in [ds, ds.GetRasterBand(1)]: gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') res = obj.ReadRaster(0,0,21,21) gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() if res is not None: gdaltest.post_reason('expected None') return 'fail' if error_msg.find('Access window out of range in RasterIO()') == -1: gdaltest.post_reason('did not get expected error msg (1)') print(error_msg) return 'fail' import sys # This should only fail on a 32bit build try: maxsize = sys.maxint except: maxsize = sys.maxsize # On win64, maxsize == 2147483647 and ReadRaster() # fails because of out of memory condition, not # because of integer overflow. I'm not sure on how # to detect win64 better. if maxsize == 2147483647 and sys.platform != 'win32': gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') res = obj.ReadRaster(0,0,1000000,1000000) gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() if res is not None: gdaltest.post_reason('expected None') return 'fail' if error_msg.find('Integer overflow') == -1: gdaltest.post_reason('did not get expected error msg (2)') print(error_msg) return 'fail' gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') res = obj.ReadRaster(0,0,0,1) gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() if res is not None: gdaltest.post_reason('expected None') return 'fail' if error_msg.find('Illegal values for buffer size') == -1: gdaltest.post_reason('did not get expected error msg (3)') print(error_msg) return 'fail' ds = None return 'success'
def ogr_rfc35_shape_3(): ds = ogr.Open('/vsimem/rfc35_test.dbf', update=1) lyr = ds.GetLayer(0) fd = ogr.FieldDefn("baz25", ogr.OFTString) fd.SetWidth(25) lyr_defn = lyr.GetLayerDefn() gdal.PushErrorHandler('CPLQuietErrorHandler') ret = lyr.AlterFieldDefn(-1, fd, ogr.ALTER_ALL_FLAG) gdal.PopErrorHandler() if ret == 0: return 'fail' gdal.PushErrorHandler('CPLQuietErrorHandler') ret = lyr.AlterFieldDefn(lyr_defn.GetFieldCount(), fd, ogr.ALTER_ALL_FLAG) gdal.PopErrorHandler() if ret == 0: return 'fail' lyr.AlterFieldDefn(lyr_defn.GetFieldIndex("baz15"), fd, ogr.ALTER_ALL_FLAG) expected_values = [ ['foo0', None, None, None], ['foo1', 'bar1', None, None], ['foo2', 'bar2_01234', 'baz2_0123456789', None], ['foo3', 'bar3_01234', 'baz3_0123456789', 'baw3_012345678901234'] ] ret = CheckFeatures(lyr, baz='baz25') if ret != 'success': return ret fd = ogr.FieldDefn("baz5", ogr.OFTString) fd.SetWidth(5) lyr_defn = lyr.GetLayerDefn() lyr.AlterFieldDefn(lyr_defn.GetFieldIndex("baz25"), fd, ogr.ALTER_ALL_FLAG) ret = CheckFeatures(lyr, baz='baz5') if ret != 'success': return ret ds = None ds = ogr.Open('/vsimem/rfc35_test.dbf', update=1) lyr = ds.GetLayer(0) lyr_defn = lyr.GetLayerDefn() fld_defn = lyr_defn.GetFieldDefn(lyr_defn.GetFieldIndex('baz5')) if fld_defn.GetWidth() != 5: return 'fail' ret = CheckFeatures(lyr, baz='baz5') if ret != 'success': return ret return 'success'
def ogr_rfc35_mem_5(): lyr = gdaltest.rfc35_mem_ds.GetLayer(0) lyr_defn = lyr.GetLayerDefn() if lyr.TestCapability(ogr.OLCDeleteField) != 1: return 'fail' gdal.PushErrorHandler('CPLQuietErrorHandler') ret = lyr.DeleteField(-1) gdal.PopErrorHandler() if ret == 0: return 'fail' gdal.PushErrorHandler('CPLQuietErrorHandler') ret = lyr.DeleteField(lyr.GetLayerDefn().GetFieldCount()) gdal.PopErrorHandler() if ret == 0: return 'fail' if lyr.DeleteField(0) != 0: return 'fail' ret = CheckFeatures(lyr, baz = 'baz5') if ret != 'success': return ret if lyr.DeleteField(lyr_defn.GetFieldIndex('baw20')) != 0: return 'fail' ret = CheckFeatures(lyr, baz = 'baz5', baw = None) if ret != 'success': return ret if lyr.DeleteField(lyr_defn.GetFieldIndex('baz5')) != 0: return 'fail' ret = CheckFeatures(lyr, baz = None, baw = None) if ret != 'success': return ret if lyr.DeleteField(lyr_defn.GetFieldIndex('foo5')) != 0: return 'fail' if lyr.DeleteField(lyr_defn.GetFieldIndex('bar10')) != 0: return 'fail' ret = CheckFeatures(lyr, foo = None, bar = None, baz = None, baw = None) if ret != 'success': return ret return 'success'
def png_8(): drv = gdal.GetDriverByName( 'PNG' ) ds_src = gdal.Open( 'data/idat_broken.png' ) md = ds_src.GetMetadata() if len(md) > 0: gdaltest.post_reason('metadata list not expected') return 'fail' # Number of bands has been preserved if ds_src.RasterCount != 4: gdaltest.post_reason('wrong number of bands') return 'fail' # No reading is performed, so we expect valid reference b = ds_src.GetRasterBand(1) if b is None: gdaltest.post_reason('band 1 is missing') return 'fail' # We're not interested in returned value but internal state of GDAL. gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) stats = b.ComputeBandStats() err = gdal.GetLastErrorNo() gdal.PopErrorHandler() if err == 0: gdaltest.post_reason('error condition expected') return 'fail' gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) ds_dst = drv.CreateCopy( 'tmp/idat_broken.png', ds_src ) err = gdal.GetLastErrorNo() gdal.PopErrorHandler() ds_src = None if err == 0: gdaltest.post_reason('error condition expected') return 'fail' if ds_dst is not None: gdaltest.post_reason('dataset not expected') return 'fail' os.remove( 'tmp/idat_broken.png' ) return 'success'
def osr_url_test(url, expected_wkt): timeout = 10 socket.setdefaulttimeout(timeout) if gdaltest.gdalurlopen(url) is None: return 'skip' """Depend on the Accepts headers that ImportFromUrl sets to request SRS from sr.org""" srs = osr.SpatialReference() import gdal gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) try: srs.ImportFromUrl( url ) except AttributeError: # old-gen bindings don't have this method yet return 'skip' except Exception: gdal.PopErrorHandler() if gdal.GetLastErrorMsg() == "GDAL/OGR not compiled with libcurl support, remote requests not supported." or \ gdal.GetLastErrorMsg().find("timed out") != -1: return 'skip' else: gdaltest.post_reason( 'exception: ' + gdal.GetLastErrorMsg() ) return 'fail' gdal.PopErrorHandler() if gdal.GetLastErrorMsg() == "GDAL/OGR not compiled with libcurl support, remote requests not supported." or \ gdal.GetLastErrorMsg().find("timed out") != -1: return 'skip' if not gdaltest.equal_srs_from_wkt( expected_wkt, srs.ExportToWkt() ): return 'fail' return 'success'
def vrt_read_7(): filename = "/vsimem/vrt_read_7.vrt" content = """<VRTDataset rasterXSize="20" rasterYSize="20"> <VRTRasterBand dataType="Byte" band="1"> <SimpleSource> <SourceFilename relativeToVRT="1">%s</SourceFilename> <SourceBand>1</SourceBand> <SrcRect xOff="0" yOff="0" xSize="20" ySize="20" /> <DstRect xOff="0" yOff="0" xSize="20" ySize="20" /> </SimpleSource> </VRTRasterBand> </VRTDataset>""" % filename gdal.FileFromMemBuffer(filename, content) gdal.PushErrorHandler('CPLQuietErrorHandler') ds = gdal.Open(filename) gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() gdal.Unlink(filename) if ds is not None: return 'fail' if error_msg != 'GDALOpen() called with too many recursion levels': return 'fail' return 'success'
def usgsdem_7(): ds = gdal.Open('data/n43.dt0') # To avoid warning about 'Unable to find NTS mapsheet lookup file: NTS-50kindex.csv' gdal.PushErrorHandler('CPLQuietErrorHandler') ds2 = gdal.GetDriverByName('USGSDEM').CreateCopy('tmp/000a00DEMz', ds, options = [ 'PRODUCT=CDED50K', 'TOPLEFT=80w,44n', 'RESAMPLE=Nearest', 'ZRESOLUTION=1.1', 'INTERNALNAME=GDAL' ] ) gdal.PopErrorHandler() if ds2.RasterXSize != 1201 or ds2.RasterYSize != 1201: gdaltest.post_reason( 'Bad image dimensions.' ) return 'fail' expected_gt = (-80.000104166666674,0.000208333333333,0,44.000104166666667,0,-0.000208333333333) got_gt = ds2.GetGeoTransform() for i in range(6): if abs(expected_gt[i]-got_gt[i]) > 1e-5: print('') print('expected = ', expected_gt) print('got = ', got_gt) gdaltest.post_reason( 'Geotransform differs.' ) return 'fail' srs = osr.SpatialReference() srs.SetWellKnownGeogCS('NAD83') if ds2.GetProjectionRef() != srs.ExportToWkt(): gdaltest.post_reason( 'Bad SRS.' ) return 'fail' ds2 = None return 'success'
def wms_4(): if gdaltest.wms_drv is None or gdaltest.wms_ds is None: return 'skip' if not gdaltest.wms_srv1_ok: return 'skip' gdal.SetConfigOption('CPL_ACCUM_ERROR_MSG', 'ON') gdal.PushErrorHandler('CPLQuietErrorHandler') cs = gdaltest.wms_ds.GetRasterBand(1).Checksum(0, 0, 100, 100) gdal.PopErrorHandler() gdal.SetConfigOption('CPL_ACCUM_ERROR_MSG', 'OFF') msg = gdal.GetLastErrorMsg() gdal.ErrorReset() if msg is not None and msg.find( 'Service denied due to system overload') != -1: print(msg) return 'skip' if cs != 57182: gdaltest.post_reason('Wrong checksum: ' + str(cs)) return 'fail' return 'success'
def ogr_wkbwkt_test_geometrycollection_wkb_recursion(): import struct wkb_repeat = struct.pack('B' * 9, 0, 0, 0, 0, 7, 0, 0, 0, 1 ) wkb_end = struct.pack('B' * 9, 0, 0, 0, 0, 7, 0, 0, 0, 0 ) wkb = struct.pack('B' * 0) for i in range(31): wkb = wkb + wkb_repeat wkb = wkb + wkb_end geom = ogr.CreateGeometryFromWkb(wkb) if geom is None: gdaltest.post_reason('expected a geometry') return 'fail' wkb = struct.pack('B' * 0) for i in range(32): wkb = wkb + wkb_repeat wkb = wkb + wkb_end gdal.PushErrorHandler('CPLQuietErrorHandler') geom = ogr.CreateGeometryFromWkb(wkb) gdal.PopErrorHandler() if geom is not None: gdaltest.post_reason('expected None') return 'fail' return 'success'
def doq1_1(): tst = gdaltest.GDALTest( 'DOQ1', 'fakedoq1.doq', 1, 1 ) gdal.PushErrorHandler('CPLQuietErrorHandler') ret = tst.testOpen() gdal.PopErrorHandler() return ret
def ogr_mysql_21(): if gdaltest.mysql_ds is None: return 'skip' layer = gdaltest.mysql_ds.CreateLayer('tablewithspatialindex', geom_type=ogr.wkbPoint, options=['ENGINE=MyISAM']) ogrtest.quick_create_layer_def(layer, [('name', ogr.OFTString)]) dst_feat = ogr.Feature(feature_def=layer.GetLayerDefn()) dst_feat.SetField('name', 'name') # The insertion MUST fail gdal.PushErrorHandler('CPLQuietErrorHandler') layer.CreateFeature(dst_feat) gdal.PopErrorHandler() dst_feat.Destroy() layer.ResetReading() feat = layer.GetNextFeature() if feat is not None: return 'fail' return 'success'
def osr_ct_1(): gdaltest.have_proj4 = 0 utm_srs = osr.SpatialReference() utm_srs.SetUTM(11) utm_srs.SetWellKnownGeogCS('WGS84') ll_srs = osr.SpatialReference() ll_srs.SetWellKnownGeogCS('WGS84') gdal.PushErrorHandler('CPLQuietErrorHandler') try: ct = osr.CoordinateTransformation(ll_srs, utm_srs) except ValueError: gdal.PopErrorHandler() if gdal.GetLastErrorMsg().find('Unable to load PROJ.4') != -1: gdaltest.post_reason('PROJ.4 missing, transforms not available.') return 'skip' else: gdaltest.post_reason(gdal.GetLastErrorMsg()) return 'fail' gdal.PopErrorHandler() if ct is None or ct.this is None: gdaltest.post_reason('Unable to create simple CoordinateTransformat.') return 'fail' gdaltest.have_proj4 = 1 return 'success'
def ogr_wkbwkt_test_geometrycollection_wkt_recursion(): wkt = '' for i in range(31): wkt = wkt + 'GEOMETRYCOLLECTION (' wkt = wkt + 'GEOMETRYCOLLECTION EMPTY' for i in range(31): wkt = wkt + ')' geom = ogr.CreateGeometryFromWkt(wkt) if geom.ExportToWkt() != wkt: gdaltest.post_reason('expected %s' % wkt) print(geom.ExportToWkt()) return 'fail' wkt = '' for i in range(32): wkt = wkt + 'GEOMETRYCOLLECTION (' wkt = wkt + 'GEOMETRYCOLLECTION EMPTY' for i in range(32): wkt = wkt + ')' gdal.PushErrorHandler('CPLQuietErrorHandler') geom = ogr.CreateGeometryFromWkt(wkt) gdal.PopErrorHandler() if geom is not None: gdaltest.post_reason('expected None') return 'fail' return 'success'
def netcdf_26(): if gdaltest.netcdf_drv is None: return 'skip' #test default config test = gdaltest.GDALTest('NETCDF', '../data/int16-nogeo.nc', 1, 4672) gdal.PushErrorHandler('CPLQuietErrorHandler') result = test.testCreateCopy(check_gt=0, check_srs=0, check_minmax=0) gdal.PopErrorHandler() if result != 'success': print('failed create copy without WRITE_BOTTOMUP') return result #test WRITE_BOTTOMUP=NO test = gdaltest.GDALTest('NETCDF', '../data/int16-nogeo.nc', 1, 4855, options=['WRITE_BOTTOMUP=NO']) result = test.testCreateCopy(check_gt=0, check_srs=0, check_minmax=0) if result != 'success': print('failed create copy with WRITE_BOTTOMUP=NO') return result return 'success'
def dted_8(): # this will enable DTED_VERIFY_CHECKSUM gdal.SetConfigOption('DTED_VERIFY_CHECKSUM', 'YES') ds = gdal.Open( 'data/n43_bad_crc.dt0' ) band = ds.GetRasterBand(1) # numerous errors would be reported gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) chksum = band.Checksum() gdal.PopErrorHandler() gdal.SetConfigOption('DTED_VERIFY_CHECKSUM', 'NO') if gdal.GetLastErrorMsg() is None: gdaltest.post_reason( 'An expected warning was not emitted' ) return 'fail' # 49187 is the checksum of data is the DTED is read without checking its checksum # so we should not get this value if chksum == 49187: gdaltest.post_reason('DTED_VERIFY_CHECKSUM=YES has had no effect!') return 'fail' return 'success'
def basic_test_4(): gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) ds = gdal.Open('', gdal.GA_Update) gdal.PopErrorHandler() if ds is None and gdal.GetLastErrorMsg() == '`\' does not exist in the file system,\nand is not recognised as a supported dataset name.\n': return 'success' else: return 'fail'
def basic_test_5(): gdal.PushErrorHandler( 'CPLQuietErrorHandler' ) ds = gdal.Open('data/doctype.xml', gdal.GA_ReadOnly) gdal.PopErrorHandler() if ds is None and gdal.GetLastErrorMsg() == '`data/doctype.xml\' not recognised as a supported file format.\n': return 'success' else: return 'fail'
def ogr_vrt_22(): gdal.PushErrorHandler('CPLQuietErrorHandler') try: ret = ogr_vrt_22_internal() except: ret = 'fail' gdal.PopErrorHandler() return ret
def ogr_csv_12(): if gdaltest.csv_ds is None: return 'skip' srclyr = gdaltest.csv_ds.GetLayerByName('testcsvt') ####################################################### # Create layer (.csv file) options = [ 'CREATE_CSVT=YES', ] gdaltest.csv_lyr2 = gdaltest.csv_tmpds.CreateLayer('testcsvt_copy', options=options) ####################################################### # Setup Schema for i in range(srclyr.GetLayerDefn().GetFieldCount()): field_defn = srclyr.GetLayerDefn().GetFieldDefn(i) gdal.PushErrorHandler('CPLQuietErrorHandler') gdaltest.csv_lyr2.CreateField(field_defn) gdal.PopErrorHandler() ####################################################### # Recopy source layer into destination layer dst_feat = ogr.Feature(feature_def=gdaltest.csv_lyr2.GetLayerDefn()) srclyr.ResetReading() feat = srclyr.GetNextFeature() while feat is not None: dst_feat.SetFrom(feat) gdaltest.csv_lyr2.CreateFeature(dst_feat) feat.Destroy() feat = srclyr.GetNextFeature() dst_feat.Destroy() ####################################################### # Closes everything and reopen gdaltest.csv_tmpds.Destroy() gdaltest.csv_tmpds = None gdaltest.csv_ds.Destroy() gdaltest.csv_ds = None gdaltest.csv_ds = ogr.Open('tmp/csvwrk/testcsvt_copy.csv') ####################################################### # Checks copy if gdaltest.csv_ds is None: return 'fail' lyr = gdaltest.csv_ds.GetLayerByName('testcsvt_copy') return ogr_csv_check_testcsvt(lyr)
def get_raster(filename, points, quiet = False): """ Reads the value of attributes in a raster file at a list of points. """ if quiet: gdal.PushErrorHandler('CPLQuietErrorHandler') # register all of the drivers gdal.AllRegister() # open the image dataset = gdal.Open(filename, GA_ReadOnly) # get the coordinate transformation transform = get_NAD1983_transform(dataset) # get image size rows = dataset.RasterYSize cols = dataset.RasterXSize bands = dataset.RasterCount # get georeference info x0, width, x_rotation, y0, y_rotation, height = dataset.GetGeoTransform() # loop through the points and get the raster values values = [] for point in points: # get x,y x, y, z = transform.TransformPoint(point[0], point[1]) # transform the easting and northing to pixel space pixel_x = int((x - x0) / width) pixel_y = int((y - y0) / height) # loop through the bands and find the values for i in range(1, bands + 1): band = dataset.GetRasterBand(i) # read data and add the value to the string value = band.ReadRaster(pixel_x, pixel_y, 1, 1) if value is None: value = -1 else: value = int.from_bytes(value, byteorder = 'little') values.append(value) return values
def rasterio_6(): ds = gdal.GetDriverByName('MEM').Create('', 2, 2) for obj in [ds, ds.GetRasterBand(1)]: try: obj.WriteRaster(0,0,2,2,None) gdaltest.post_reason('expected exception') return 'fail' except: pass gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') obj.WriteRaster(0,0,2,2,' ') gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() if error_msg.find('Buffer too small') == -1: gdaltest.post_reason('did not get expected error msg (1)') print(error_msg) return 'fail' gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') obj.WriteRaster(-1,0,1,1,' ') gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() if error_msg.find('Access window out of range in RasterIO()') == -1: gdaltest.post_reason('did not get expected error msg (2)') print(error_msg) return 'fail' gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') obj.WriteRaster(0,0,0,1,' ') gdal.PopErrorHandler() error_msg = gdal.GetLastErrorMsg() if error_msg.find('Illegal values for buffer size') == -1: gdaltest.post_reason('did not get expected error msg (3)') print(error_msg) return 'fail' ds = None return 'success'
def setGdalException(e=True): old = gdal.GetUseExceptions() if e: gdal.PushErrorHandler(GdalErrorHandler().handler) gdal.UseExceptions() else: gdal.DontUseExceptions() gdal.PopErrorHandler() return old == 1
def vsistdin_3(): gdal.PushErrorHandler('CPLQuietErrorHandler') f = gdal.VSIFOpenL('/vsistdin/', 'wb') gdal.PopErrorHandler() if f is not None: return 'fail' return 'success'
def vsizip_6(): # Maintain ZIP file opened fmain = gdal.VSIFOpenL("/vsizip/vsimem/test6.zip", "wb") f = gdal.VSIFOpenL("/vsizip/vsimem/test6.zip/foo.bar", "wb") if f is None: gdaltest.post_reason('fail') return 'fail' gdal.VSIFWriteL("12345", 1, 5, f) gdal.VSIFCloseL(f) f = None gdal.PushErrorHandler('CPLQuietErrorHandler') f = gdal.VSIFOpenL("/vsizip/vsimem/test6.zip/foo.bar", "wb") gdal.PopErrorHandler() if f is not None: gdaltest.post_reason('fail') gdal.VSIFCloseL(f) return 'fail' gdal.VSIFCloseL(fmain) fmain = None gdal.Unlink("/vsimem/test6.zip") # Now close it each time f = gdal.VSIFOpenL("/vsizip/vsimem/test6.zip/foo.bar", "wb") if f is None: gdaltest.post_reason('fail') return 'fail' gdal.VSIFWriteL("12345", 1, 5, f) gdal.VSIFCloseL(f) f = None gdal.PushErrorHandler('CPLQuietErrorHandler') f = gdal.VSIFOpenL("/vsizip/vsimem/test6.zip/foo.bar", "wb") gdal.PopErrorHandler() if f is not None: gdaltest.post_reason('fail') gdal.VSIFCloseL(f) return 'fail' gdal.Unlink("/vsimem/test6.zip") return 'success'
def vrt_read_1(): gdal.PushErrorHandler('CPLQuietErrorHandler') ds = gdal.Open('data/idontexist.vrt') gdal.PopErrorHandler() if ds is None: return 'success' return 'fail'
def ogr_sql_19(): gdal.PushErrorHandler('CPLQuietErrorHandler') sql_lyr = gdaltest.ds.ExecuteSQL('') gdal.PopErrorHandler() if sql_lyr is not None: return 'fail' return 'success'
def jpeg_17(): gdal.ErrorReset() gdal.PushErrorHandler('CPLQuietErrorHandler') ds = gdal.Open('data/bogus.jpg') gdal.PopErrorHandler() if ds is not None or gdal.GetLastErrorMsg() == '': gdaltest.post_reason('fail') return 'fail' gdal.ErrorReset() ds = gdal.Open('data/byte_corrupted.jpg') gdal.PushErrorHandler('CPLQuietErrorHandler') ds.GetRasterBand(1).Checksum() gdal.PopErrorHandler() if gdal.GetLastErrorMsg() == '': gdaltest.post_reason('fail') return 'fail' return 'success'
def bsb_6(): if gdaltest.bsb_dr is None: return 'skip' tst = gdaltest.GDALTest('BSB', 'rgbsmall_truncated2.kap', 1, 29696) gdal.PushErrorHandler('CPLQuietErrorHandler') ret = tst.testOpen() gdal.PopErrorHandler() return ret