Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Make compiled tests more stable
we do not want to ignore AttributeErrors for those
  • Loading branch information
m-kuhn committed May 31, 2018
1 parent dbe4186 commit d1eabe1
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 8 deletions.
15 changes: 7 additions & 8 deletions tests/src/python/providertestbase.py
Expand Up @@ -52,6 +52,11 @@ def uncompiledFilters(self):
cannot be compiled """
return set()

def enableCompiler(self):
"""By default there is no expression compiling available, needs to be overridden in subclass"""
print('Provider does not support compiling')
return False

def partiallyCompiledFilters(self):
""" Individual derived provider tests should override this to return a list of expressions which
should be partially compiled """
Expand Down Expand Up @@ -141,14 +146,11 @@ def testGetFeaturesUncompiled(self):
self.runPolyGetFeatureTests(self.poly_provider)

def testGetFeaturesExp(self):
try:
self.enableCompiler()
if self.enableCompiler():
self.compiled = True
self.runGetFeatureTests(self.source)
if hasattr(self, 'poly_provider'):
self.runPolyGetFeatureTests(self.poly_provider)
except AttributeError:
print('Provider does not support compiling')

def testSubsetString(self):
if not self.source.supportsSubsetString():
Expand Down Expand Up @@ -232,11 +234,8 @@ def testOrderBy(self):
self.runOrderByTests()

def testOrderByCompiled(self):
try:
self.enableCompiler()
if self.enableCompiler():
self.runOrderByTests()
except AttributeError:
print('Provider does not support compiling')

def runOrderByTests(self):
FeatureSourceTestCase.runOrderByTests(self)
Expand Down
1 change: 1 addition & 0 deletions tests/src/python/test_provider_db2.py
Expand Up @@ -58,6 +58,7 @@ def getSubsetString(self):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down
1 change: 1 addition & 0 deletions tests/src/python/test_provider_mssql.py
Expand Up @@ -52,6 +52,7 @@ def tearDownClass(cls):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down
1 change: 1 addition & 0 deletions tests/src/python/test_provider_oracle.py
Expand Up @@ -85,6 +85,7 @@ def getEditableLayer(self):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down
2 changes: 2 additions & 0 deletions tests/src/python/test_provider_postgres.py
Expand Up @@ -104,6 +104,7 @@ def getEditableLayer(self):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down Expand Up @@ -1125,6 +1126,7 @@ def tearDownClass(cls):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down
1 change: 1 addition & 0 deletions tests/src/python/test_provider_shapefile.py
Expand Up @@ -93,6 +93,7 @@ def getEditableLayer(self):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down
1 change: 1 addition & 0 deletions tests/src/python/test_provider_spatialite.py
Expand Up @@ -260,6 +260,7 @@ def tearDown(self):

def enableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', True)
return True

def disableCompiler(self):
QgsSettings().setValue('/qgis/compileExpressions', False)
Expand Down

0 comments on commit d1eabe1

Please sign in to comment.