def testRemoveBookmark(self): project = QgsProject() b = QgsBookmark() b.setId('1') b.setName('b1') b.setExtent( QgsReferencedRectangle(QgsRectangle(11, 21, 31, 41), QgsCoordinateReferenceSystem('EPSG:4326'))) self.manager = QgsBookmarkManager.createProjectBasedManager(project) bookmark_removed_spy = QSignalSpy(self.manager.bookmarkRemoved) bookmark_about_to_be_removed_spy = QSignalSpy( self.manager.bookmarkAboutToBeRemoved) # tests that bookmark still exists when bookmarkAboutToBeRemoved is fired self.manager.bookmarkAboutToBeRemoved.connect( self.bookmarkAboutToBeRemoved) # not added, should fail self.assertFalse(self.manager.removeBookmark(b.id())) self.assertEqual(len(bookmark_removed_spy), 0) self.assertEqual(len(bookmark_about_to_be_removed_spy), 0) self.assertTrue(self.manager.addBookmark(b)[1]) self.assertEqual(self.manager.bookmarks(), [b]) self.assertTrue(self.manager.removeBookmark(b.id())) self.assertEqual(len(self.manager.bookmarks()), 0) self.assertEqual(len(bookmark_removed_spy), 1) self.assertEqual(bookmark_removed_spy[0][0], '1') self.assertEqual(len(bookmark_about_to_be_removed_spy), 1) self.assertEqual(bookmark_about_to_be_removed_spy[0][0], '1') self.assertTrue(self.aboutFired) self.manager = None
def testMoveBookmark(self): """ Test moving a bookmark from one manager to another """ p = QgsProject() manager = QgsBookmarkManager(p) manager2 = QgsBookmarkManager(p) # add a bunch of bookmarks b = QgsBookmark() b.setId('1') b.setName('b1') b.setExtent( QgsReferencedRectangle(QgsRectangle(11, 21, 31, 41), QgsCoordinateReferenceSystem('EPSG:4326'))) b2 = QgsBookmark() b2.setId('2') b2.setName('b2') b2.setExtent( QgsReferencedRectangle(QgsRectangle(12, 22, 32, 42), QgsCoordinateReferenceSystem('EPSG:4326'))) b3 = QgsBookmark() b3.setId('3') b3.setName('b3') b3.setExtent( QgsReferencedRectangle(QgsRectangle(32, 32, 33, 43), QgsCoordinateReferenceSystem('EPSG:4326'))) manager.addBookmark(b) manager.addBookmark(b2) manager2.addBookmark(b3) self.assertEqual(manager.bookmarks(), [b, b2]) self.assertEqual(manager2.bookmarks(), [b3]) self.assertFalse(manager.moveBookmark('bbbb', manager2)) self.assertFalse(manager.moveBookmark(b3.id(), manager2)) self.assertEqual(manager.bookmarks(), [b, b2]) self.assertEqual(manager2.bookmarks(), [b3]) self.assertTrue(manager.moveBookmark(b.id(), manager2)) self.assertEqual(manager.bookmarks(), [b2]) self.assertEqual(manager2.bookmarks(), [b3, b]) self.assertFalse(manager.moveBookmark(b.id(), manager2)) self.assertTrue(manager2.moveBookmark(b3.id(), manager)) self.assertEqual(manager.bookmarks(), [b2, b3]) self.assertEqual(manager2.bookmarks(), [b])
def testBookmark(self): b = QgsBookmark() self.assertFalse(b.id()) self.assertFalse(b.name()) b.setId('id') self.assertEqual(b.id(), 'id') b.setName('name') self.assertEqual(b.name(), 'name') b.setGroup('group') self.assertEqual(b.group(), 'group') b.setExtent( QgsReferencedRectangle(QgsRectangle(1, 2, 3, 4), QgsCoordinateReferenceSystem('EPSG:3111'))) self.assertEqual( b.extent(), QgsReferencedRectangle(QgsRectangle(1, 2, 3, 4), QgsCoordinateReferenceSystem('EPSG:3111')))