Skip to content

Commit 53a48ec

Browse files
author
cpolymeris@gmail.com
committed
Load real provider.
git-svn-id: http://sextante.googlecode.com/svn/trunk/soft/bindings/qgis-plugin@297 881b9c09-3ef8-f3c2-ec3d-21d735c97f4d
1 parent 3497758 commit 53a48ec

File tree

2 files changed

+16
-11
lines changed

2 files changed

+16
-11
lines changed

src/sextante/tests/qgis_interface.py

+12-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626

2727
from PyQt4.QtCore import QObject
2828
from qgis.core import QgsMapLayerRegistry
29-
29+
from qgis.core import *
3030

3131
class QgisInterface(QObject):
3232
"""Class to expose qgis objects and functionalities to plugins.
@@ -39,6 +39,11 @@ def __init__(self, canvas):
3939
"""Constructor"""
4040
QObject.__init__(self)
4141
self.canvas = canvas
42+
QgsProviderRegistry.instance()
43+
self.testRaster = QgsRasterLayer('data/raster', "test raster")
44+
self.testVector = QgsVectorLayer('data/vector', "test vector")
45+
self.testRaster.dataProvider = lambda: QgsProviderRegistry.instance().provider('ogr','data/raster')
46+
self.testVector.dataProvider = lambda: QgsProviderRegistry.instance().provider('gdal','data/vector')
4247

4348
def zoomFull(self):
4449
"""Zoom to the map full extent"""
@@ -94,4 +99,9 @@ def addDockWidget(self, area, dockwidget):
9499
pass
95100

96101
def legendInterface(self):
97-
return type('FakeLInterface', (), {'layers' : list})()
102+
return type('FakeLInterface', (),
103+
{'layers' :
104+
lambda _: [
105+
self.testRaster,
106+
self.testVector]
107+
})()

src/sextante/tests/test.py

+4-9
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
#from gui.is_plugin import ISPlugin
3838
from sextante.SextantePlugin import SextantePlugin
3939
from sextante.core.Sextante import Sextante
40+
from sextante.core.SextanteLog import SextanteLog
4041
from sextante.gui.ParametersDialog import ParametersDialog
4142
from sextante.parameters.ParameterRaster import ParameterRaster
4243
from sextante.parameters.ParameterVector import ParameterVector
@@ -50,10 +51,6 @@
5051
from sextante.modeler.ModelerAlgorithm import ModelerAlgorithm
5152
QGISAPP, CANVAS, IFACE, PARENT = getQgisTestApp()
5253

53-
class DataProviderStub:
54-
def __init__(self, uri):
55-
self.dataSourceUri = lambda: uri
56-
5754
class bcolors:
5855
INFO = '\033[94m'
5956
WARNING = '\033[91m'
@@ -86,13 +83,11 @@ def gen_test_parameters(self, alg, doSet = False):
8683
b = False
8784
for p in alg.parameters:
8885
if isinstance(p, ParameterRaster):
89-
l = QgsRasterLayer('data/raster', "test raster")
90-
l.dataProvider = lambda: DataProviderStub('data/raster')
86+
l = IFACE.testRaster
9187
if doSet: p.setValue(l)
9288
yield l
9389
elif isinstance(p, ParameterVector):
94-
l = QgsVectorLayer('data/vector', "test vector")
95-
#~ l.dataProvider = lambda: DataProviderStub('data/vector')
90+
l = IFACE.testVector
9691
if doSet: p.setValue(l)
9792
yield l
9893
elif isinstance(p, ParameterNumber):
@@ -134,11 +129,11 @@ def gen_test_parameters(self, alg, doSet = False):
134129

135130
def setUp(self):
136131
SextanteConfig.setSettingValue(SextanteConfig.USE_THREADS, self.threaded)
137-
self.args = list(self.gen_test_parameters(self.alg, True))
138132
print
139133
print bcolors.INFO, self.msg, bcolors.ENDC,
140134
print "Parameters: ", self.alg.parameters,
141135
print "Outputs: ", [out for out in self.alg.outputs if not out.hidden],
136+
self.args = list(self.gen_test_parameters(self.alg, True))
142137
print ' => ', self.args, bcolors.WARNING,
143138

144139
def runalg_none(self):

0 commit comments

Comments
 (0)