43
43
TEST_DATA_DIR = unitTestDataPath ()
44
44
45
45
46
+ def toPercent (s ):
47
+ return bytes (QUrl .toPercentEncoding (s )).decode ()
48
+
49
+
46
50
class TestQgsVirtualLayerProvider (unittest .TestCase , ProviderTestCase ):
47
51
48
52
@classmethod
@@ -137,7 +141,7 @@ def test_DynamicGeometry(self):
137
141
self .assertEqual (l1 .isValid (), True )
138
142
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
139
143
140
- query = QUrl . toPercentEncoding ("select *,makepoint(x,y) as geom from vtab1" )
144
+ query = toPercent ("select *,makepoint(x,y) as geom from vtab1" )
141
145
l2 = QgsVectorLayer ("?layer_ref=%s&query=%s&geometry=geom:point:0&uid=id" % (l1 .id (), query ), "vtab" , "virtual" , False )
142
146
self .assertEqual (l2 .isValid (), True )
143
147
@@ -163,7 +167,7 @@ def test_Query(self):
163
167
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
164
168
ref_sum = sum (f .attributes ()[0 ] for f in l1 .getFeatures ())
165
169
166
- query = QUrl . toPercentEncoding ("SELECT * FROM vtab1" )
170
+ query = toPercent ("SELECT * FROM vtab1" )
167
171
l2 = QgsVectorLayer ("?layer_ref=%s&geometry=geometry:3:4326&query=%s&uid=OBJECTID" % (l1 .id (), query ), "vtab" , "virtual" , False )
168
172
self .assertEqual (l2 .isValid (), True )
169
173
self .assertEqual (l2 .dataProvider ().wkbType (), 3 )
@@ -187,7 +191,7 @@ def test_Query(self):
187
191
self .assertEqual (ref_sum , ref_sum3 )
188
192
189
193
# with two geometry columns
190
- query = QUrl . toPercentEncoding ("SELECT *,geometry as geom FROM vtab1" )
194
+ query = toPercent ("SELECT *,geometry as geom FROM vtab1" )
191
195
l2 = QgsVectorLayer ("?layer_ref=%s&query=%s&uid=OBJECTID&geometry=geom:3:4326" % (l1 .id (), query ), "vtab" , "virtual" , False )
192
196
self .assertEqual (l2 .isValid (), True )
193
197
self .assertEqual (l2 .dataProvider ().wkbType (), 3 )
@@ -210,7 +214,7 @@ def test_Query(self):
210
214
self .assertEqual (ref_sum , ref_sum3 )
211
215
212
216
# the same, without geometry
213
- query = QUrl . toPercentEncoding ("SELECT * FROM ww" )
217
+ query = toPercent ("SELECT * FROM ww" )
214
218
l2 = QgsVectorLayer ("?layer_ref=%s:ww&query=%s&uid=ObJeCtId&nogeometry" % (l1 .id (), query ), "vtab" , "virtual" , False )
215
219
self .assertEqual (l2 .isValid (), True )
216
220
self .assertEqual (l2 .dataProvider ().wkbType (), 100 ) # NoGeometry
@@ -230,7 +234,7 @@ def test_QueryUrlEncoding(self):
230
234
self .assertEqual (l1 .isValid (), True )
231
235
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
232
236
233
- query = str ( QUrl . toPercentEncoding ( "SELECT * FROM vtab1" ) )
237
+ query = toPercent ( "SELECT * FROM vtab1" )
234
238
l2 = QgsVectorLayer ("?layer_ref=%s&query=%s&uid=ObjectId&nogeometry" % (l1 .id (), query ), "vtab" , "virtual" , False )
235
239
self .assertEqual (l2 .isValid (), True )
236
240
@@ -241,7 +245,7 @@ def test_QueryTableName(self):
241
245
self .assertEqual (l1 .isValid (), True )
242
246
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
243
247
244
- query = str ( QUrl . toPercentEncoding ( "SELECT * FROM vt" ) )
248
+ query = toPercent ( "SELECT * FROM vt" )
245
249
l2 = QgsVectorLayer ("?layer_ref=%s:vt&query=%s&uid=ObJeCtId&nogeometry" % (l1 .id (), query ), "vtab" , "virtual" , False )
246
250
self .assertEqual (l2 .isValid (), True )
247
251
self .assertEqual (l2 .dataProvider ().wkbType (), 100 ) # NoGeometry
@@ -258,7 +262,7 @@ def test_Join(self):
258
262
ref_sum = sum (f .attributes ()[1 ] for f in l2 .getFeatures ())
259
263
260
264
# use a temporary file
261
- query = QUrl . toPercentEncoding ("select id,Pilots,vtab1.geometry from vtab1,vtab2 where intersects(vtab1.geometry,vtab2.geometry)" )
265
+ query = toPercent ("select id,Pilots,vtab1.geometry from vtab1,vtab2 where intersects(vtab1.geometry,vtab2.geometry)" )
262
266
l3 = QgsVectorLayer ("?layer_ref=%s&layer_ref=%s&uid=id&query=%s&geometry=geometry:1:4326" % (l1 .id (), l2 .id (), query ), "vtab" , "virtual" , False )
263
267
self .assertEqual (l3 .isValid (), True )
264
268
self .assertEqual (l3 .dataProvider ().wkbType (), 1 )
@@ -296,25 +300,25 @@ def test_geometryTypes(self):
296
300
QgsMapLayerRegistry .instance ().removeMapLayer (l .id ())
297
301
298
302
def test_embeddedLayer (self ):
299
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
303
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
300
304
l = QgsVectorLayer ("?layer=ogr:%s" % source , "vtab" , "virtual" , False )
301
305
self .assertEqual (l .isValid (), True )
302
306
303
307
l = QgsVectorLayer ("?layer=ogr:%s:nn" % source , "vtab" , "virtual" , False )
304
308
self .assertEqual (l .isValid (), True )
305
309
306
310
def test_filter_rect (self ):
307
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
311
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
308
312
309
- query = QUrl . toPercentEncoding ("select * from vtab where _search_frame_=BuildMbr(-2.10,49.38,-1.3,49.99,4326)" )
313
+ query = toPercent ("select * from vtab where _search_frame_=BuildMbr(-2.10,49.38,-1.3,49.99,4326)" )
310
314
l2 = QgsVectorLayer ("?layer=ogr:%s:vtab&query=%s&uid=objectid" % (source , query ), "vtab2" , "virtual" , False )
311
315
self .assertEqual (l2 .isValid (), True )
312
316
self .assertEqual (l2 .dataProvider ().featureCount (), 1 )
313
317
a = [fit .attributes ()[4 ] for fit in l2 .getFeatures ()]
314
318
self .assertEqual (a , [u"Basse-Normandie" ])
315
319
316
320
def test_recursiveLayer (self ):
317
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
321
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
318
322
l = QgsVectorLayer ("?layer=ogr:%s" % source , "vtab" , "virtual" , False )
319
323
self .assertEqual (l .isValid (), True )
320
324
QgsMapLayerRegistry .instance ().addMapLayer (l )
@@ -333,7 +337,7 @@ def test_no_geometry(self):
333
337
self .assertEqual (l2 .dataProvider ().wkbType (), 100 ) # NoGeometry
334
338
335
339
def test_reopen (self ):
336
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
340
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
337
341
tmp = QUrl .fromLocalFile (os .path .join (tempfile .gettempdir (), "t.sqlite" )).toString ()
338
342
l = QgsVectorLayer ("%s?layer=ogr:%s:vtab" % (tmp , source ), "vtab2" , "virtual" , False )
339
343
self .assertEqual (l .isValid (), True )
@@ -344,7 +348,7 @@ def test_reopen(self):
344
348
self .assertEqual (l2 .dataProvider ().featureCount (), 4 )
345
349
346
350
def test_reopen2 (self ):
347
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
351
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
348
352
tmp = QUrl .fromLocalFile (os .path .join (tempfile .gettempdir (), "t.sqlite" )).toString ()
349
353
l = QgsVectorLayer ("%s?layer=ogr:%s:vtab&nogeometry" % (tmp , source ), "vtab2" , "virtual" , False )
350
354
self .assertEqual (l .isValid (), True )
@@ -355,9 +359,9 @@ def test_reopen2(self):
355
359
self .assertEqual (l2 .dataProvider ().featureCount (), 4 )
356
360
357
361
def test_reopen3 (self ):
358
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
362
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
359
363
tmp = QUrl .fromLocalFile (os .path .join (tempfile .gettempdir (), "t.sqlite" )).toString ()
360
- query = QUrl . toPercentEncoding ("SELECT * FROM vtab" )
364
+ query = toPercent ("SELECT * FROM vtab" )
361
365
l = QgsVectorLayer ("%s?layer=ogr:%s:vtab&query=%s&uid=objectid&geometry=geometry:3:4326" % (tmp , source , query ), "vtab2" , "virtual" , False )
362
366
self .assertEqual (l .isValid (), True )
363
367
@@ -371,9 +375,9 @@ def test_reopen3(self):
371
375
self .assertEqual (suma , 3064.0 )
372
376
373
377
def test_reopen4 (self ):
374
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
378
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
375
379
tmp = QUrl .fromLocalFile (os .path .join (tempfile .gettempdir (), "t.sqlite" )).toString ()
376
- query = QUrl . toPercentEncoding ("SELECT * FROM vtab" )
380
+ query = toPercent ("SELECT * FROM vtab" )
377
381
l = QgsVectorLayer ("%s?layer=ogr:%s:vtab&query=%s&uid=objectid&nogeometry" % (tmp , source , query ), "vtab2" , "virtual" , False )
378
382
self .assertEqual (l .isValid (), True )
379
383
@@ -406,7 +410,7 @@ def test_refLayers(self):
406
410
407
411
# cf qgis bug #12266
408
412
for i in range (10 ):
409
- q = QUrl . toPercentEncoding ("select * from t" + str (i ))
413
+ q = toPercent ("select * from t" + str (i ))
410
414
l2 = QgsVectorLayer ("?layer_ref=%s:t%d&query=%s&uid=id" % (l1 .id (), i , q ), "vtab" , "virtual" , False )
411
415
QgsMapLayerRegistry .instance ().addMapLayer (l2 )
412
416
self .assertEqual (l2 .isValid (), True )
@@ -441,7 +445,7 @@ def test_sql2(self):
441
445
self .assertEqual (l2 .isValid (), True )
442
446
QgsMapLayerRegistry .instance ().addMapLayer (l2 )
443
447
444
- query = QUrl . toPercentEncoding ("SELECT * FROM france_parts" )
448
+ query = toPercent ("SELECT * FROM france_parts" )
445
449
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" )
446
450
self .assertEqual (l4 .isValid (), True )
447
451
@@ -457,7 +461,7 @@ def test_sql2(self):
457
461
self .assertEqual (n , 1 )
458
462
459
463
# use uid
460
- query = QUrl . toPercentEncoding ("SELECT * FROM france_parts" )
464
+ query = toPercent ("SELECT * FROM france_parts" )
461
465
l5 = QgsVectorLayer ("?query=%s&geometry=geometry:polygon:4326&uid=ObjectId" % query , "tt" , "virtual" )
462
466
self .assertEqual (l5 .isValid (), True )
463
467
@@ -499,14 +503,14 @@ def test_sql3(self):
499
503
QgsMapLayerRegistry .instance ().addMapLayer (l2 )
500
504
501
505
# unnamed column
502
- query = QUrl . toPercentEncoding ("SELECT count(*)" )
506
+ query = toPercent ("SELECT count(*)" )
503
507
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" , False )
504
508
self .assertEqual (l4 .isValid (), True )
505
509
self .assertEqual (l4 .dataProvider ().fields ().at (0 ).name (), "count(*)" )
506
510
self .assertEqual (l4 .dataProvider ().fields ().at (0 ).type (), QVariant .Int )
507
511
508
512
def test_sql_field_types (self ):
509
- query = QUrl . toPercentEncoding ("SELECT 42 as t, 'ok'||'ok' as t2, GeomFromText('') as t3, 3.14*2 as t4" )
513
+ query = toPercent ("SELECT 42 as t, 'ok'||'ok' as t2, GeomFromText('') as t3, 3.14*2 as t4" )
510
514
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" , False )
511
515
self .assertEqual (l4 .isValid (), True )
512
516
self .assertEqual (l4 .dataProvider ().fields ().at (0 ).name (), "t" )
@@ -519,7 +523,7 @@ def test_sql_field_types(self):
519
523
self .assertEqual (l4 .dataProvider ().fields ().at (3 ).type (), QVariant .Double )
520
524
521
525
# with type annotations
522
- query = QUrl . toPercentEncoding ("SELECT '42.0' as t /*:real*/, 3 as t2/*:text */, GeomFromText('') as t3 /*:multiPoInT:4326 */, 3.14*2 as t4/*:int*/" )
526
+ query = toPercent ("SELECT '42.0' as t /*:real*/, 3 as t2/*:text */, GeomFromText('') as t3 /*:multiPoInT:4326 */, 3.14*2 as t4/*:int*/" )
523
527
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" , False )
524
528
self .assertEqual (l4 .isValid (), True )
525
529
self .assertEqual (l4 .dataProvider ().fields ().at (0 ).name (), "t" )
@@ -537,13 +541,13 @@ def test_sql_field_types(self):
537
541
self .assertEqual (f .attributes ()[2 ], 6.28 )
538
542
539
543
# with type annotations and url options
540
- query = QUrl . toPercentEncoding ("SELECT 1 as id /*:int*/, geomfromtext('point(0 0)',4326) as geometry/*:point:4326*/" )
544
+ query = toPercent ("SELECT 1 as id /*:int*/, geomfromtext('point(0 0)',4326) as geometry/*:point:4326*/" )
541
545
l4 = QgsVectorLayer ("?query=%s&geometry=geometry" % query , "tt" , "virtual" , False )
542
546
self .assertEqual (l4 .isValid (), True )
543
547
self .assertEqual (l4 .dataProvider ().wkbType (), 1 ) # point
544
548
545
549
# with type annotations and url options (2)
546
- query = QUrl . toPercentEncoding ("SELECT 1 as id /*:int*/, 3.14 as f, geomfromtext('point(0 0)',4326) as geometry/*:point:4326*/" )
550
+ query = toPercent ("SELECT 1 as id /*:int*/, 3.14 as f, geomfromtext('point(0 0)',4326) as geometry/*:point:4326*/" )
547
551
l4 = QgsVectorLayer ("?query=%s&geometry=geometry&field=id:text" % query , "tt" , "virtual" , False )
548
552
self .assertEqual (l4 .isValid (), True )
549
553
self .assertEqual (l4 .dataProvider ().fields ().at (0 ).name (), "id" )
@@ -553,18 +557,18 @@ def test_sql_field_types(self):
553
557
self .assertEqual (l4 .dataProvider ().wkbType (), 1 ) # point
554
558
555
559
def test_sql3b (self ):
556
- query = QUrl . toPercentEncoding ("SELECT GeomFromText('POINT(0 0)') as geom" )
560
+ query = toPercent ("SELECT GeomFromText('POINT(0 0)') as geom" )
557
561
l4 = QgsVectorLayer ("?query=%s&geometry=geom" % query , "tt" , "virtual" , False )
558
562
self .assertEqual (l4 .isValid (), True )
559
563
self .assertEqual (l4 .dataProvider ().wkbType (), 1 )
560
564
561
565
# forced geometry type
562
- query = QUrl . toPercentEncoding ("SELECT GeomFromText('POINT(0 0)') as geom" )
566
+ query = toPercent ("SELECT GeomFromText('POINT(0 0)') as geom" )
563
567
l4 = QgsVectorLayer ("?query=%s&geometry=geom:point:0" % query , "tt" , "virtual" , False )
564
568
self .assertEqual (l4 .isValid (), True )
565
569
self .assertEqual (l4 .dataProvider ().wkbType (), 1 )
566
570
567
- query = QUrl . toPercentEncoding ("SELECT CastToPoint(GeomFromText('POINT(0 0)')) as geom" )
571
+ query = toPercent ("SELECT CastToPoint(GeomFromText('POINT(0 0)')) as geom" )
568
572
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" , False )
569
573
self .assertEqual (l4 .isValid (), True )
570
574
self .assertEqual (l4 .dataProvider ().wkbType (), 1 )
@@ -574,7 +578,7 @@ def test_sql4(self):
574
578
self .assertEqual (l2 .isValid (), True )
575
579
QgsMapLayerRegistry .instance ().addMapLayer (l2 )
576
580
577
- query = QUrl . toPercentEncoding ("SELECT OBJECTId from france_parts" )
581
+ query = toPercent ("SELECT OBJECTId from france_parts" )
578
582
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" , False )
579
583
self .assertEqual (l4 .isValid (), True )
580
584
s = sum (f .attributes ()[0 ] for f in l4 .getFeatures ())
@@ -586,15 +590,15 @@ def test_layer_name(self):
586
590
self .assertEqual (l2 .isValid (), True )
587
591
QgsMapLayerRegistry .instance ().addMapLayer (l2 )
588
592
589
- query = QUrl . toPercentEncoding ('SELECT OBJECTId from "FranCe parts"' )
593
+ query = toPercent ('SELECT OBJECTId from "FranCe parts"' )
590
594
l4 = QgsVectorLayer ("?query=%s" % query , "tt" , "virtual" , False )
591
595
self .assertEqual (l4 .isValid (), True )
592
596
s = sum (f .attributes ()[0 ] for f in l4 .getFeatures ())
593
597
self .assertEqual (s , 10659 )
594
598
595
599
def test_encoding (self ):
596
600
# changes encoding on a shapefile (the only provider supporting setEncoding)
597
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "shp_latin1.dbf" ))
601
+ source = toPercent (os .path .join (self .testDataDir , "shp_latin1.dbf" ))
598
602
l = QgsVectorLayer ("?layer=ogr:%s:fp:latin1" % source , "vtab" , "virtual" , False )
599
603
self .assertEqual (l .isValid (), True )
600
604
@@ -608,30 +612,30 @@ def test_encoding(self):
608
612
self .assertEqual (f .attributes ()[1 ], u"accents \ufffd \ufffd \ufffd " ) # invalid unicode characters
609
613
610
614
def test_rowid (self ):
611
- source = QUrl . toPercentEncoding (os .path .join (self .testDataDir , "france_parts.shp" ))
612
- query = QUrl . toPercentEncoding ("select rowid as uid, * from vtab limit 1 offset 3" )
615
+ source = toPercent (os .path .join (self .testDataDir , "france_parts.shp" ))
616
+ query = toPercent ("select rowid as uid, * from vtab limit 1 offset 3" )
613
617
l = QgsVectorLayer ("?layer=ogr:%s:vtab&query=%s" % (source , query ), "vtab2" , "virtual" , False )
614
618
# the last line must have a fixed rowid (not an autoincrement)
615
619
for f in l .getFeatures ():
616
620
lid = f .attributes ()[0 ]
617
621
self .assertEqual (lid , 3 )
618
622
619
623
def test_geometry_conversion (self ):
620
- query = QUrl . toPercentEncoding ("select geomfromtext('multipoint((0 0),(1 1))') as geom" )
624
+ query = toPercent ("select geomfromtext('multipoint((0 0),(1 1))') as geom" )
621
625
l = QgsVectorLayer ("?query=%s&geometry=geom:multipoint:0" % query , "tt" , "virtual" , False )
622
626
self .assertEqual (l .isValid (), True )
623
627
for f in l .getFeatures ():
624
628
self .assertEqual (f .geometry ().exportToWkt ().lower ().startswith ("multipoint" ), True )
625
629
self .assertEqual ("),(" in f .geometry ().exportToWkt (), True ) # has two points
626
630
627
- query = QUrl . toPercentEncoding ("select geomfromtext('multipolygon(((0 0,1 0,1 1,0 1,0 0)),((0 1,1 1,1 2,0 2,0 1)))') as geom" )
631
+ query = toPercent ("select geomfromtext('multipolygon(((0 0,1 0,1 1,0 1,0 0)),((0 1,1 1,1 2,0 2,0 1)))') as geom" )
628
632
l = QgsVectorLayer ("?query=%s&geometry=geom:multipolygon:0" % query , "tt" , "virtual" , False )
629
633
self .assertEqual (l .isValid (), True )
630
634
for f in l .getFeatures ():
631
635
self .assertEqual (f .geometry ().exportToWkt ().lower ().startswith ("multipolygon" ), True )
632
636
self .assertEqual (")),((" in f .geometry ().exportToWkt (), True ) # has two polygons
633
637
634
- query = QUrl . toPercentEncoding ("select geomfromtext('multilinestring((0 0,1 0,1 1,0 1,0 0),(0 1,1 1,1 2,0 2,0 1))') as geom" )
638
+ query = toPercent ("select geomfromtext('multilinestring((0 0,1 0,1 1,0 1,0 0),(0 1,1 1,1 2,0 2,0 1))') as geom" )
635
639
l = QgsVectorLayer ("?query=%s&geometry=geom:multilinestring:0" % query , "tt" , "virtual" , False )
636
640
self .assertEqual (l .isValid (), True )
637
641
for f in l .getFeatures ():
@@ -668,21 +672,23 @@ def test_ProjectDependencies(self):
668
672
self .assertEqual (l1 .isValid (), True )
669
673
QgsMapLayerRegistry .instance ().addMapLayer (l1 )
670
674
671
- query = QUrl . toPercentEncoding ("SELECT * FROM france_parts" )
675
+ query = toPercent ("SELECT * FROM france_parts" )
672
676
l2 = QgsVectorLayer ("?query=%s" % query , "aa" , "virtual" , False )
673
677
self .assertEqual (l2 .isValid (), True )
674
678
QgsMapLayerRegistry .instance ().addMapLayer (l2 )
675
679
676
680
self .assertEqual (len (l2 .dependencies ()), 1 )
677
- self .assertEqual (l2 .dependencies ()[0 ].layerId ().startswith ('france_parts' ), True )
681
+ ll0 = l2 .dependencies ().pop ()
682
+ self .assertEqual (ll0 .layerId ().startswith ('france_parts' ), True )
678
683
679
- query = QUrl . toPercentEncoding ("SELECT t1.objectid, t2.name_0 FROM france_parts as t1, aa as t2" )
684
+ query = toPercent ("SELECT t1.objectid, t2.name_0 FROM france_parts as t1, aa as t2" )
680
685
l3 = QgsVectorLayer ("?query=%s" % query , "bb" , "virtual" , False )
681
686
self .assertEqual (l3 .isValid (), True )
682
687
QgsMapLayerRegistry .instance ().addMapLayer (l3 )
683
688
684
689
self .assertEqual (len (l2 .dependencies ()), 1 )
685
- self .assertEqual (l2 .dependencies ()[0 ].layerId ().startswith ('france_parts' ), True )
690
+ ll0 = l2 .dependencies ().pop ()
691
+ self .assertEqual (ll0 .layerId ().startswith ('france_parts' ), True )
686
692
687
693
self .assertEqual (len (l3 .dependencies ()), 2 )
688
694
@@ -691,7 +697,7 @@ def test_ProjectDependencies(self):
691
697
QgsProject .instance ().setFileName (temp )
692
698
QgsProject .instance ().write ()
693
699
694
- QgsMapLayerRegistry .instance ().removeMapLayers ([l1 , l2 ])
700
+ QgsMapLayerRegistry .instance ().removeMapLayers ([l1 . id () , l2 . id () ])
695
701
QgsProject .instance ().clear ()
696
702
697
703
QgsProject .instance ().setFileName (temp )
@@ -795,7 +801,7 @@ def test_joined_layers_conversion(self):
795
801
'LEFT JOIN {} AS j1 ON t."b_id"=j1."id" ' +
796
802
'LEFT JOIN {} AS j2 ON t."c_id"=j2."id"' ).format (v1 .id (), v2 .id (), v3 .id ()))
797
803
798
- QgsMapLayerRegistry .instance ().removeMapLayers ([v1 , v2 , v3 ])
804
+ QgsMapLayerRegistry .instance ().removeMapLayers ([v1 . id () , v2 . id () , v3 . id () ])
799
805
800
806
801
807
if __name__ == '__main__' :
0 commit comments