def testProject(self): p = QgsProject() m = self.createTestMetadata() metadata_changed_spy = QSignalSpy(p.metadataChanged) p.setMetadata(m) self.assertEqual(len(metadata_changed_spy), 1) self.checkExpectedMetadata(p.metadata()) p.clear() self.assertEqual(len(metadata_changed_spy), 2) self.assertEqual(p.metadata().title(), '') # test that the project title is just a shortcut to the metadata title field p.setTitle('my title') self.assertEqual(p.metadata().title(), 'my title') m.setTitle('my title 2') p.setMetadata(m) self.assertEqual(p.title(), 'my title 2')