Skip to content

Commit

Permalink
Add additional formats
Browse files Browse the repository at this point in the history
  • Loading branch information
nyalldawson committed Aug 8, 2021
1 parent 17fa482 commit 906b7f0
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 11 deletions.
11 changes: 10 additions & 1 deletion src/core/providers/gdal/qgsgdalprovider.cpp
Expand Up @@ -3765,6 +3765,13 @@ QStringList QgsGdalProviderMetadata::sidecarFilesForUri( const QString &uri ) co
QStringLiteral( "vdc" ),
QStringLiteral( "avl" ),
}
},
{
QStringLiteral( "sdat" ), {
QStringLiteral( "sgrd" ),
QStringLiteral( "mgrd" ),
QStringLiteral( "prj" ),
}
}
};

Expand All @@ -3786,8 +3793,9 @@ QStringList QgsGdalProviderMetadata::sidecarFilesForUri( const QString &uri ) co
for ( const QString &ext :
{
QStringLiteral( "aux.xml" ),
QStringLiteral( "vat.dbf" ),
QStringLiteral( "ovr" ),
QStringLiteral( "wld" )
QStringLiteral( "wld" ),
} )
{
res.append( fileInfo.dir().filePath( fileInfo.completeBaseName() + '.' + ext ) );
Expand All @@ -3801,3 +3809,4 @@ QgsGdalProviderMetadata::QgsGdalProviderMetadata():
}

///@endcond

5 changes: 5 additions & 0 deletions src/core/providers/ogr/qgsogrprovidermetadata.cpp
Expand Up @@ -1339,6 +1339,11 @@ QStringList QgsOgrProviderMetadata::sidecarFilesForUri( const QString &uri ) con
QStringLiteral( "lma" ),
}
},
{
QStringLiteral( "mif" ), {
QStringLiteral( "mid" ),
}
},
{
QStringLiteral( "gml" ), {
QStringLiteral( "gfs" ),
Expand Down
30 changes: 20 additions & 10 deletions tests/src/python/test_provider_gdal.py
Expand Up @@ -14,14 +14,11 @@

from qgis.core import (
QgsProviderRegistry,
QgsDataProvider,
QgsRasterLayer,
QgsRectangle,
)
from qgis.testing import start_app, unittest

from qgis.PyQt.QtGui import qRed

from utilities import unitTestDataPath

start_app()
Expand Down Expand Up @@ -124,33 +121,46 @@ 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.ovr', '/home/me/some_file.wld'])
['/home/me/some_file.aux.xml', '/home/me/some_file.vat.dbf', '/home/me/some_file.ovr',
'/home/me/some_file.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.ovr',
'/home/me/special.jpegw', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.img'),
['/home/me/special.ige', '/home/me/special.aux.xml', '/home/me/special.ovr',
['/home/me/special.ige', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.sid'),
['/home/me/special.j2w', '/home/me/special.aux.xml', '/home/me/special.ovr',
['/home/me/special.j2w', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.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'])
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'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.raster'),
['/home/me/special.rasterw', '/home/me/special.aux.xml', '/home/me/special.ovr',
['/home/me/special.rasterw', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.wld'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.bt'),
['/home/me/special.btw', '/home/me/special.aux.xml', '/home/me/special.ovr',
['/home/me/special.btw', '/home/me/special.aux.xml', '/home/me/special.vat.dbf',
'/home/me/special.ovr',
'/home/me/special.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.ovr', '/home/me/special.wld'])
'/home/me/special.aux.xml', '/home/me/special.vat.dbf', '/home/me/special.ovr',
'/home/me/special.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'])


if __name__ == '__main__':
Expand Down
2 changes: 2 additions & 0 deletions tests/src/python/test_provider_ogr.py
Expand Up @@ -2144,6 +2144,8 @@ def test_provider_sidecar_files_for_uri(self):
['/home/me/special.dat', '/home/me/special.id', '/home/me/special.map', '/home/me/special.ind',
'/home/me/special.tda', '/home/me/special.tin', '/home/me/special.tma',
'/home/me/special.lda', '/home/me/special.lin', '/home/me/special.lma'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.mif'),
['/home/me/special.mid'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.gml'),
['/home/me/special.gfs', '/home/me/special.xsd'])
self.assertEqual(metadata.sidecarFilesForUri('/home/me/special.csv'), ['/home/me/special.csvt'])
Expand Down

0 comments on commit 906b7f0

Please sign in to comment.