@@ -292,6 +292,11 @@ def test_removeMapLayersById(self):
292292 self .assertEqual (QgsMapLayerRegistry .instance ().count (), 0 )
293293 self .assertTrue (sip .isdeleted (l2 ))
294294
295+ # try removing a layer not in the registry
296+ l4 = createLayer ('test4' )
297+ QgsMapLayerRegistry .instance ().removeMapLayers ([l4 .id ()])
298+ self .assertFalse (sip .isdeleted (l4 ))
299+
295300 # fails on qt5 due to removeMapLayers list type conversion - needs a PyName alias
296301 # added to removeMapLayers for QGIS 3.0
297302 @unittest .expectedFailure (QT_VERSION_STR [0 ] == '5' )
@@ -362,6 +367,11 @@ def test_removeMapLayerById(self):
362367 self .assertEqual (QgsMapLayerRegistry .instance ().count (), 0 )
363368 self .assertTrue (sip .isdeleted (l2 ))
364369
370+ # try removing a layer not in the registry
371+ l3 = createLayer ('test3' )
372+ QgsMapLayerRegistry .instance ().removeMapLayer (l3 .id ())
373+ self .assertFalse (sip .isdeleted (l3 ))
374+
365375 def test_removeMapLayerByLayer (self ):
366376 """ test removing a map layer by layer """
367377 QgsMapLayerRegistry .instance ().removeAllMapLayers ()
@@ -395,6 +405,11 @@ def test_removeMapLayerByLayer(self):
395405 self .assertEqual (QgsMapLayerRegistry .instance ().count (), 0 )
396406 self .assertTrue (sip .isdeleted (l2 ))
397407
408+ # try removing a layer not in the registry
409+ l3 = createLayer ('test3' )
410+ QgsMapLayerRegistry .instance ().removeMapLayer (l3 )
411+ self .assertFalse (sip .isdeleted (l3 ))
412+
398413 def test_removeAllMapLayers (self ):
399414 """ test removing all map layers from registry """
400415 QgsMapLayerRegistry .instance ().removeAllMapLayers ()
@@ -457,7 +472,7 @@ def test_addRemoveLayersSignals(self):
457472 self .assertEqual (len (layer_removed_spy ), 4 )
458473 self .assertEqual (len (remove_all_spy ), 1 )
459474
460- #remove a layer which isn 't in the registry
475+ #remove some layers which aren 't in the registry
461476 QgsMapLayerRegistry .instance ().removeMapLayers (['asdasd' ])
462477 self .assertEqual (len (layers_will_be_removed_spy ), 3 )
463478 self .assertEqual (len (layer_will_be_removed_spy_str ), 4 )
@@ -466,6 +481,15 @@ def test_addRemoveLayersSignals(self):
466481 self .assertEqual (len (layer_removed_spy ), 4 )
467482 self .assertEqual (len (remove_all_spy ), 1 )
468483
484+ l5 = createLayer ('test5' )
485+ QgsMapLayerRegistry .instance ().removeMapLayer (l5 )
486+ self .assertEqual (len (layers_will_be_removed_spy ), 3 )
487+ self .assertEqual (len (layer_will_be_removed_spy_str ), 4 )
488+ self .assertEqual (len (layer_will_be_removed_spy_layer ), 4 )
489+ self .assertEqual (len (layers_removed_spy ), 3 )
490+ self .assertEqual (len (layer_removed_spy ), 4 )
491+ self .assertEqual (len (remove_all_spy ), 1 )
492+
469493 def test_RemoveLayerShouldNotSegFault (self ):
470494 QgsMapLayerRegistry .instance ().removeAllMapLayers ()
471495
0 commit comments