70 changes: 36 additions & 34 deletions tests/src/core/testziplayer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ class TestZipLayer: public QObject
QString mDataDir;
QString mScanZipSetting;
QStringList mScanZipSettings;
QString mSettingsKey;

// get map layer using Passthru
QgsMapLayer * getLayer( QString myPath, QString myName, QString myProviderKey );
Expand Down Expand Up @@ -216,8 +217,8 @@ int TestZipLayer::getLayerTransparency( QString myFileName, QString myProviderKe
{
int myTransparency = -1;
QSettings settings;
settings.setValue( "/qgis/scanZipInBrowser", myScanZipSetting );
if ( myScanZipSetting != settings.value( "/qgis/scanZipInBrowser" ).toString() )
settings.setValue( mSettingsKey, myScanZipSetting );
if ( myScanZipSetting != settings.value( mSettingsKey ).toString() )
return myTransparency;

QgsMapLayer * myLayer = NULL;
Expand Down Expand Up @@ -272,15 +273,16 @@ void TestZipLayer::initTestCase()

// save current zipSetting value
QSettings settings;
mScanZipSetting = settings.value( "/qgis/scanZipInBrowser", "basic" ).toString();
mSettingsKey = "/qgis/scanZipInBrowser2";
mScanZipSetting = settings.value( mSettingsKey, "basic" ).toString();
mScanZipSettings << "basic" << "full";
}

void TestZipLayer::cleanupTestCase()
{
// restore zipSetting
QSettings settings;
settings.setValue( "/qgis/scanZipInBrowser", mScanZipSetting );
settings.setValue( mSettingsKey, mScanZipSetting );
}

void TestZipLayer::testPassthruVectorZip()
Expand All @@ -294,8 +296,8 @@ void TestZipLayer::testPassthruVectorZip()
QgsDebugMsg( "FILE: " + QString( myFileName ) );
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItemPassthru( myFileName, "ogr" ) );
}
}
Expand All @@ -309,8 +311,8 @@ void TestZipLayer::testPassthruVectorTar()
QString myFileName = mDataDir + "points2.tar";
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItemPassthru( myFileName, "ogr" ) );
}
}
Expand All @@ -323,8 +325,8 @@ void TestZipLayer::testPassthruVectorGzip()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItemPassthru( mDataDir + "points3.geojson.gz", "ogr" ) );
}
}
Expand All @@ -334,8 +336,8 @@ void TestZipLayer::testPassthruRasterZip()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItemPassthru( mDataDir + "landsat_b1.zip", "gdal" ) );
}
}
Expand All @@ -348,8 +350,8 @@ void TestZipLayer::testPassthruRasterTar()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItemPassthru( mDataDir + "landsat_b1.tar", "gdal" ) );
}
}
Expand All @@ -359,8 +361,8 @@ void TestZipLayer::testPassthruRasterGzip()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItemPassthru( mDataDir + "landsat_b1.tif.gz", "gdal" ) );
}
}
Expand All @@ -370,8 +372,8 @@ void TestZipLayer::testZipItemRaster()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( QDir::tempPath() + "/testzip.zip", "landsat_b1.tif" ) );
}
}
Expand All @@ -384,8 +386,8 @@ void TestZipLayer::testTarItemRaster()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( mDataDir + "testtar.tgz", "landsat_b1.tif" ) );
}
}
Expand All @@ -395,8 +397,8 @@ void TestZipLayer::testZipItemVector()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( QDir::tempPath() + "/testzip.zip", "points.shp" ) );
}
}
Expand All @@ -409,8 +411,8 @@ void TestZipLayer::testTarItemVector()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( mDataDir + "testtar.tgz", "points.shp" ) );
}
}
Expand All @@ -422,8 +424,8 @@ void TestZipLayer::testZipItemAll()
// using zipSetting 2 (Basic Scan) would raise errors, because QgsZipItem would not test for valid items
// and return child names of the invalid items
QSettings settings;
settings.setValue( "/qgis/scanZipInBrowser", "full" );
QVERIFY( "full" == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, "full" );
QVERIFY( "full" == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( QDir::tempPath() + "/testzip.zip", "" ) );
}

Expand All @@ -433,8 +435,8 @@ void TestZipLayer::testTarItemAll()
QSKIP( "This test requires GDAL >= 1.8", SkipSingle );
#endif
QSettings settings;
settings.setValue( "/qgis/scanZipInBrowser", "full" );
QVERIFY( "full" == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, "full" );
QVERIFY( "full" == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( mDataDir + "testtar.tgz", "" ) );
}

Expand Down Expand Up @@ -485,8 +487,8 @@ void TestZipLayer::testZipItemSubfolder()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( QDir::tempPath() + "/testzip.zip", "folder/folder2/landsat_b2.tif" ) );
}
}
Expand All @@ -499,8 +501,8 @@ void TestZipLayer::testTarItemSubfolder()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( mDataDir + "testtar.tgz", "folder/folder2/landsat_b2.tif" ) );
}
}
Expand All @@ -514,8 +516,8 @@ void TestZipLayer::testZipItemVRT()
QSettings settings;
foreach ( QString s, mScanZipSettings )
{
settings.setValue( "/qgis/scanZipInBrowser", s );
QVERIFY( s == settings.value( "/qgis/scanZipInBrowser" ).toString() );
settings.setValue( mSettingsKey, s );
QVERIFY( s == settings.value( mSettingsKey ).toString() );
QVERIFY( testZipItem( QDir::tempPath() + "/testzip.zip", "landsat.vrt", "gdal" ) );
// this file is buggy with gdal svn - skip for now
// QVERIFY( testZipItem( QDir::tempPath() + "/testzip.zip", "points.vrt", "ogr" ) );
Expand Down