def _createRealProject(name=None): app = common.getPitiviMock(proxyingStrategy=ProxyingStrategy.NOTHING) project_manager = ProjectManager(app) project_manager.newBlankProject() project = project_manager.current_project if name: project.name = name return project
def _customSetUp(self, settings): # Always make sure we start with a clean medialibrary, and no other # is connected to some assets. self.clean() self.mainloop = GLib.MainLoop.new(None, False) self.check_no_transcoding = False self.app = common.getPitiviMock(settings) self.app.project_manager = ProjectManager(self.app) self.medialibrary = medialibrary.MediaLibraryWidget(self.app) self.app.project_manager.newBlankProject(ignore_unsaved_changes=True) self.app.project_manager.current_project.connect( "loaded", self.projectLoadedCb) self.mainloop.run()
def createTimeline(self): app = common.getPitiviMock() project_manager = ProjectManager(app) project_manager.newBlankProject() project = project_manager.current_project timeline_container = TimelineContainer(app) timeline_container.setProject(project) timeline = timeline_container.timeline timeline.get_parent = mock.MagicMock() timeline.app.settings.leftClickAlsoSeeks = False return timeline
def testSwitchContextTab(self): """ Test tab switches """ app = common.getPitiviMock() mainwindow = PitiviMainWindow(app) for expected_tab, b_element in [ (2, GES.TitleClip()), (0, GES.SourceClip()), (1, GES.TransitionClip())]: mainwindow.switchContextTab(b_element) self.assertEqual(expected_tab, mainwindow.context_tabs.get_current_page(), b_element) # Make sure the tab does not change when using an invalid argument. mainwindow.switchContextTab("invalid") self.assertEqual( expected_tab, mainwindow.context_tabs.get_current_page()) mainwindow.destroy()
def testLoad(self): ptv = common.getPitiviMock(proxyingStrategy=ProxyingStrategy.NOTHING) project = Project(uri="fake.xges", app=ptv) self.assertFalse(project._has_default_video_settings) self.assertFalse(project._has_default_audio_settings)
def __init__(self): pipeline.Pipeline.__init__(self, common.getPitiviMock(None)) self.state_calls = {} self._timeline = mock.MagicMock()
def __loading_failure(self, has_proxy): mainloop = GLib.MainLoop.new(None, False) app = common.getPitiviMock( settings={"lastProjectFolder": "/tmp", "edgeSnapDeadband": 32}) app.project_manager = ProjectManager(app) mainwindow = PitiviMainWindow(app) mainwindow.viewer = mock.MagicMock() def __pm_missing_uri_cb(project_manager, project, error, asset): nonlocal mainloop nonlocal mainwindow nonlocal self nonlocal app nonlocal has_proxy with mock.patch('gi.repository.Gtk.Dialog') as dialog: failed_cb = mock.MagicMock() app.project_manager.connect("new-project-failed", failed_cb) dialog.return_value = mock.MagicMock() dialog.return_value.run = mock.MagicMock( return_value=Gtk.ResponseType.CLOSE) # Call the actual callback # pylint: disable=protected-access app.proxy_manager.checkProxyLoadingSucceeded = \ mock.MagicMock(return_value=has_proxy) mainwindow._projectManagerMissingUriCb( project_manager, project, error, asset) self.assertTrue(dialog.called) self.assertTrue(dialog.return_value.run.called) self.assertEqual(failed_cb.called, not has_proxy) # pylint: disable=protected-access app.project_manager.connect("missing-uri", mainwindow._projectManagerMissingUriCb) # pylint: disable=protected-access app.project_manager.connect("new-project-failed", mainwindow._projectManagerNewProjectFailedCb) mainwindow.destroy() mainloop.quit() # pylint: disable=protected-access disconnectAllByFunc(app.project_manager, mainwindow._projectManagerMissingUriCb) disconnectAllByFunc(app.project_manager, mainwindow._projectManagerNewProjectFailedCb) app.project_manager.connect("missing-uri", __pm_missing_uri_cb) xges_path, uri = self.createTempProject() try: app.project_manager.loadProject(uri) finally: os.remove(xges_path) mainloop.run()