28
28
QgsRectangle ,
29
29
QgsErrorMessage ,
30
30
QgsProviderRegistry ,
31
- QgsVirtualLayerDefinition
31
+ QgsVirtualLayerDefinition ,
32
+ QgsWKBTypes
32
33
)
33
34
34
35
from utilities import (unitTestDataPath ,
@@ -84,7 +85,7 @@ def tearDown(self):
84
85
pass
85
86
86
87
def test_CsvNoGeometry (self ):
87
- l1 = QgsVectorLayer (os .path .join (self .testDataDir , "delimitedtext/test.csv" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
88
+ l1 = QgsVectorLayer ("file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ). replace ( " \\ " , "/ " ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
88
89
self .assertEqual (l1 .isValid (), True )
89
90
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
90
91
@@ -95,7 +96,7 @@ def test_CsvNoGeometry(self):
95
96
96
97
def test_source_escaping (self ):
97
98
# the source contains ':'
98
- source = "file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no"
99
+ source = "file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ). replace ( " \\ " , "/" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no"
99
100
d = QgsVirtualLayerDefinition ()
100
101
d .addSource ("t" , source , "delimitedtext" )
101
102
l = QgsVectorLayer (d .toString (), "vtab" , "virtual" , False )
@@ -134,7 +135,7 @@ def create_test_db(dbfile):
134
135
self .assertEqual (l .isValid (), True )
135
136
136
137
def test_DynamicGeometry (self ):
137
- l1 = QgsVectorLayer (os .path .join (self .testDataDir , "delimitedtext/testextpt.txt" ) + "?type=csv&delimiter=%7C&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
138
+ l1 = QgsVectorLayer ("file:///" + os .path .join (self .testDataDir , "delimitedtext/testextpt.txt" ). replace ( " \\ " , "/ " ) + "?type=csv&delimiter=%7C&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
138
139
self .assertEqual (l1 .isValid (), True )
139
140
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
140
141
@@ -327,7 +328,10 @@ def test_recursiveLayer(self):
327
328
328
329
def test_no_geometry (self ):
329
330
source = QUrl .toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
330
- l2 = QgsVectorLayer ("?layer=ogr:%s:vtab&nogeometry" % source , "vtab2" , "virtual" , False )
331
+ df = QgsVirtualLayerDefinition ()
332
+ df .addSource ("vtab" , os .path .join (self .testDataDir , "france_parts.shp" ), "ogr" )
333
+ df .setGeometryWkbType (QgsWKBTypes .NoGeometry )
334
+ l2 = QgsVectorLayer (df .toString (), "vtab2" , "virtual" , False )
331
335
self .assertEqual (l2 .isValid (), True )
332
336
self .assertEqual (l2 .dataProvider ().geometryType (), 100 ) # NoGeometry
333
337
@@ -386,7 +390,7 @@ def test_reopen4(self):
386
390
self .assertEqual (suma , 3064.0 )
387
391
388
392
def test_refLayer (self ):
389
- l1 = QgsVectorLayer (os .path .join (self .testDataDir , "delimitedtext/test.csv" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
393
+ l1 = QgsVectorLayer ("file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ). replace ( " \\ " , "/ " ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
390
394
self .assertEqual (l1 .isValid (), True )
391
395
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
392
396
@@ -399,7 +403,7 @@ def test_refLayer(self):
399
403
print sum ([f .id () for f in l2 .getFeatures ()])
400
404
401
405
def test_refLayers (self ):
402
- l1 = QgsVectorLayer (os .path .join (self .testDataDir , "delimitedtext/test.csv" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
406
+ l1 = QgsVectorLayer ("file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ). replace ( " \\ " , "/ " ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
403
407
self .assertEqual (l1 .isValid (), True )
404
408
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
405
409
@@ -414,7 +418,7 @@ def test_refLayers(self):
414
418
QgsMapLayerRegistry .instance ().removeMapLayer (l2 .id ())
415
419
416
420
def test_refLayers2 (self ):
417
- l1 = QgsVectorLayer (os .path .join (self .testDataDir , "delimitedtext/test.csv" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
421
+ l1 = QgsVectorLayer ("file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ). replace ( " \\ " , "/ " ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
418
422
self .assertEqual (l1 .isValid (), True )
419
423
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
420
424
@@ -425,7 +429,7 @@ def test_refLayers2(self):
425
429
self .assertEqual ("Cannot store referenced layers" in l2 .dataProvider ().error ().message (), True )
426
430
427
431
def test_sql (self ):
428
- l1 = QgsVectorLayer (os .path .join (self .testDataDir , "delimitedtext/test.csv" ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
432
+ l1 = QgsVectorLayer ("file:///" + os .path .join (self .testDataDir , "delimitedtext/test.csv" ). replace ( " \\ " , "/ " ) + "?type=csv&geomType=none&subsetIndex=no&watchFile=no" , "test" , "delimitedtext" , False )
429
433
self .assertEqual (l1 .isValid (), True )
430
434
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
431
435
0 commit comments