Navigation Menu

Skip to content

Commit

Permalink
Improve list of GDAL format sidecars
Browse files Browse the repository at this point in the history
  • Loading branch information
nyalldawson committed Aug 10, 2021
1 parent ff2f22f commit 512b67e
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 26 deletions.
2 changes: 1 addition & 1 deletion src/core/providers/gdal/qgsgdalprovider.cpp
Expand Up @@ -3710,7 +3710,6 @@ QStringList QgsGdalProviderMetadata::sidecarFilesForUri( const QString &uri ) co
if ( path.isEmpty() )
return {};

// all gdal uris may have a .aux.xml sidecar
const QFileInfo fileInfo( path );
const QString suffix = fileInfo.suffix();

Expand Down Expand Up @@ -3799,6 +3798,7 @@ QStringList QgsGdalProviderMetadata::sidecarFilesForUri( const QString &uri ) co
} )
{
res.append( fileInfo.dir().filePath( fileInfo.completeBaseName() + '.' + ext ) );
res.append( path + '.' + ext );
}
return res;
}
Expand Down
55 changes: 30 additions & 25 deletions tests/src/python/test_provider_gdal.py
Expand Up @@ -121,46 +121,51 @@ def test_provider_sidecar_files_for_uri(self):

self.assertEqual(metadata.sidecarFilesForUri(''), [])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/some_file.asc'),
['/home/me/some_file.aux.xml', '/home/me/some_file.vat.dbf', '/home/me/some_file.ovr',
'/home/me/some_file.wld'])
['/home/me/some_file.aux.xml', '/home/me/some_file.asc.aux.xml', '/home/me/some_file.vat.dbf',
'/home/me/some_file.asc.vat.dbf', '/home/me/some_file.ovr', '/home/me/some_file.asc.ovr',
'/home/me/some_file.wld', '/home/me/some_file.asc.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.jpg'),
['/home/me/special.jpw', '/home/me/special.jgw', '/home/me/special.jpgw',
'/home/me/special.jpegw', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
'/home/me/special.jpegw', '/home/me/special.aux.xml', '/home/me/special.jpg.aux.xml',
'/home/me/special.vat.dbf', '/home/me/special.jpg.vat.dbf', '/home/me/special.ovr',
'/home/me/special.jpg.ovr', '/home/me/special.wld', '/home/me/special.jpg.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.img'),
['/home/me/special.ige', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
['/home/me/special.ige', '/home/me/special.aux.xml', '/home/me/special.img.aux.xml',
'/home/me/special.vat.dbf', '/home/me/special.img.vat.dbf', '/home/me/special.ovr',
'/home/me/special.img.ovr', '/home/me/special.wld', '/home/me/special.img.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.sid'),
['/home/me/special.j2w', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
['/home/me/special.j2w', '/home/me/special.aux.xml', '/home/me/special.sid.aux.xml',
'/home/me/special.vat.dbf', '/home/me/special.sid.vat.dbf', '/home/me/special.ovr',
'/home/me/special.sid.ovr', '/home/me/special.wld', '/home/me/special.sid.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.tif'),
['/home/me/special.tifw', '/home/me/special.tfw', '/home/me/special.aux.xml',
'/home/me/special.vat.dbf',
'/home/me/special.ovr', '/home/me/special.wld'])
'/home/me/special.tif.aux.xml', '/home/me/special.vat.dbf', '/home/me/special.tif.vat.dbf',
'/home/me/special.ovr', '/home/me/special.tif.ovr', '/home/me/special.wld',
'/home/me/special.tif.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.bil'),
['/home/me/special.bilw', '/home/me/special.blw', '/home/me/special.aux.xml',
'/home/me/special.vat.dbf',
'/home/me/special.ovr', '/home/me/special.wld'])
'/home/me/special.bil.aux.xml', '/home/me/special.vat.dbf', '/home/me/special.bil.vat.dbf',
'/home/me/special.ovr', '/home/me/special.bil.ovr', '/home/me/special.wld',
'/home/me/special.bil.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.raster'),
['/home/me/special.rasterw', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
['/home/me/special.rasterw', '/home/me/special.aux.xml', '/home/me/special.raster.aux.xml',
'/home/me/special.vat.dbf', '/home/me/special.raster.vat.dbf', '/home/me/special.ovr',
'/home/me/special.raster.ovr', '/home/me/special.wld', '/home/me/special.raster.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.bt'),
['/home/me/special.btw', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
['/home/me/special.btw', '/home/me/special.aux.xml', '/home/me/special.bt.aux.xml',
'/home/me/special.vat.dbf', '/home/me/special.bt.vat.dbf', '/home/me/special.ovr',
'/home/me/special.bt.ovr', '/home/me/special.wld', '/home/me/special.bt.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.rst'),
['/home/me/special.rdc', '/home/me/special.smp', '/home/me/special.ref',
'/home/me/special.vct', '/home/me/special.vdc', '/home/me/special.avl',
'/home/me/special.aux.xml', '/home/me/special.vat.dbf', '/home/me/special.ovr',
'/home/me/special.wld'])
'/home/me/special.aux.xml', '/home/me/special.rst.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.rst.vat.dbf', '/home/me/special.ovr', '/home/me/special.rst.ovr',
'/home/me/special.wld', '/home/me/special.rst.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.sdat'),
['/home/me/special.sgrd', '/home/me/special.mgrd', '/home/me/special.prj',
'/home/me/special.aux.xml', '/home/me/special.vat.dbf', '/home/me/special.ovr',
'/home/me/special.wld'])
'/home/me/special.aux.xml', '/home/me/special.sdat.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.sdat.vat.dbf', '/home/me/special.ovr', '/home/me/special.sdat.ovr',
'/home/me/special.wld', '/home/me/special.sdat.wld'])


if __name__ == '__main__':
Expand Down

0 comments on commit 512b67e

Please sign in to comment.