2828 QgsRectangle ,
2929 QgsErrorMessage ,
3030 QgsProviderRegistry ,
31- QgsVirtualLayerDefinition
31+ QgsVirtualLayerDefinition ,
32+ QgsWKBTypes
3233 )
3334
3435from utilities import (unitTestDataPath ,
@@ -84,7 +85,7 @@ def tearDown(self):
8485 pass
8586
8687 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 )
8889 self .assertEqual (l1 .isValid (), True )
8990 QgsMapLayerRegistry .instance ().addMapLayer (l1 )
9091
@@ -95,7 +96,7 @@ def test_CsvNoGeometry(self):
9596
9697 def test_source_escaping (self ):
9798 # 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"
99100 d = QgsVirtualLayerDefinition ()
100101 d .addSource ("t" , source , "delimitedtext" )
101102 l = QgsVectorLayer (d .toString (), "vtab" , "virtual" , False )
@@ -134,7 +135,7 @@ def create_test_db(dbfile):
134135 self .assertEqual (l .isValid (), True )
135136
136137 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 )
138139 self .assertEqual (l1 .isValid (), True )
139140 QgsMapLayerRegistry .instance ().addMapLayer (l1 )
140141
@@ -327,7 +328,10 @@ def test_recursiveLayer(self):
327328
328329 def test_no_geometry (self ):
329330 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 )
331335 self .assertEqual (l2 .isValid (), True )
332336 self .assertEqual (l2 .dataProvider ().geometryType (), 100 ) # NoGeometry
333337
@@ -386,7 +390,7 @@ def test_reopen4(self):
386390 self .assertEqual (suma , 3064.0 )
387391
388392 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 )
390394 self .assertEqual (l1 .isValid (), True )
391395 QgsMapLayerRegistry .instance ().addMapLayer (l1 )
392396
@@ -399,7 +403,7 @@ def test_refLayer(self):
399403 print sum ([f .id () for f in l2 .getFeatures ()])
400404
401405 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 )
403407 self .assertEqual (l1 .isValid (), True )
404408 QgsMapLayerRegistry .instance ().addMapLayer (l1 )
405409
@@ -414,7 +418,7 @@ def test_refLayers(self):
414418 QgsMapLayerRegistry .instance ().removeMapLayer (l2 .id ())
415419
416420 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 )
418422 self .assertEqual (l1 .isValid (), True )
419423 QgsMapLayerRegistry .instance ().addMapLayer (l1 )
420424
@@ -425,7 +429,7 @@ def test_refLayers2(self):
425429 self .assertEqual ("Cannot store referenced layers" in l2 .dataProvider ().error ().message (), True )
426430
427431 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 )
429433 self .assertEqual (l1 .isValid (), True )
430434 QgsMapLayerRegistry .instance ().addMapLayer (l1 )
431435
0 commit comments