def testBackupProject(self): self.manager.newBlankProject() # Assign an uri to the project where it's saved by default. unused, xges_path = tempfile.mkstemp(suffix=".xges") uri = "file://" + os.path.abspath(xges_path) self.manager.current_project.uri = uri # This is where the automatic backup file is saved. backup_uri = self.manager._makeBackupURI(uri) # Save the backup self.assertTrue(self.manager.saveProject(self.manager.current_project, backup=True)) self.failUnless(uri_is_reachable(backup_uri)) self.manager.closeRunningProject() self.assertFalse(uri_is_reachable(backup_uri), "Backup file not deleted when project closed")
def testBackupProject(self): self.manager.newBlankProject() # Assign an uri to the project where it's saved by default. unused, xges_path = tempfile.mkstemp(suffix=".xges") uri = "file://" + os.path.abspath(xges_path) self.manager.current_project.uri = uri # This is where the automatic backup file is saved. backup_uri = self.manager._makeBackupURI(uri) # Save the backup self.assertTrue( self.manager.saveProject(self.manager.current_project, backup=True)) self.assertTrue(uri_is_reachable(backup_uri)) self.manager.closeRunningProject() self.assertFalse(uri_is_reachable(backup_uri), "Backup file not deleted when project closed")
def testSaveProject(self): self.assertTrue(self.manager.newBlankProject()) unused, path = tempfile.mkstemp(suffix=".xges") unused, path2 = tempfile.mkstemp(suffix=".xges") try: uri = "file://" + os.path.abspath(path) uri2 = "file://" + os.path.abspath(path2) # Save the project. self.assertTrue(self.manager.saveProject(uri=uri, backup=False)) self.assertTrue(uri_is_reachable(uri)) # Wait a bit. time.sleep(0.1) # Save the project at a new location. self.assertTrue(self.manager.saveProject(uri2, backup=False)) self.assertTrue(uri_is_reachable(uri2)) # Make sure the old path and the new path have different mtimes. mtime = os.path.getmtime(path) mtime2 = os.path.getmtime(path2) self.assertLess(mtime, mtime2) # Wait a bit more. time.sleep(0.1) # Save project again under the new path (by omitting uri arg) self.assertTrue(self.manager.saveProject(backup=False)) # regression test for bug 594396 # make sure we didn't save to the old URI self.assertEqual(mtime, os.path.getmtime(path)) # make sure we did save to the new URI self.assertLess(mtime2, os.path.getmtime(path2)) finally: os.remove(path) os.remove(path2)