def test_1(self): # Enki restores configs from old directory ~/.enki to new ~/.config/enki oldCfg = enki.core.core._OLD_CONFIG_DIR currCfg = enki.core.defines.CONFIG_DIR enki.core.core._OLD_CONFIG_DIR = self.TEST_FILE_DIR + '/old' enki.core.defines.CONFIG_DIR = self.TEST_FILE_DIR + '/new' try: os.mkdir(enki.core.core._OLD_CONFIG_DIR) core.init(base.DummyProfiler(), {'session_name': ''}) self.assertTrue(os.path.isdir(enki.core.defines.CONFIG_DIR)) self.assertFalse(os.path.isdir(enki.core.core._OLD_CONFIG_DIR)) finally: enki.core.core._OLD_CONFIG_DIR = oldCfg enki.core.defines.CONFIG_DIR = currCfg
def test_1(self): """ Init with current document path """ path = os.path.abspath('../..') dock = self.findDock('&File Browser') dock._onVisibilityChanged(True) dock.setCurrentPath(path) core.term() core.init(base.DummyProfiler(), {'session_name': '', 'auto-session-name': ''}) dock = self.findDock('&File Browser') dock._onVisibilityChanged(True) # We can't simply do ``dock.currentPath() == path`` because of # Windows fun: ``u'C:/Users/bjones/AppData/Local' != 'c:\\users\\bjones\\appdata\\local'``. # We can't use ``os.path.samefile()`` because that's available only on # Unix for Python 2.7. So, use normpath and normcase per # http://stackoverflow.com/questions/21158667/comparing-two-paths-in-python. self.assertEqual(normpathcase(dock.currentPath()), normpathcase(self.TEST_FILE_DIR))
def test_2(self): # Enki shows QMessageBox if failed to move config dir oldCfg = enki.core.core._OLD_CONFIG_DIR currCfg = enki.core.defines.CONFIG_DIR enki.core.core._OLD_CONFIG_DIR = self.TEST_FILE_DIR + '/old' enki.core.defines.CONFIG_DIR = '/new' try: os.mkdir(enki.core.core._OLD_CONFIG_DIR) def inDialog(dialog): self.assertTrue( dialog.windowTitle().startswith('Failed to move configs')) dialog.accept() self.openDialog( lambda: core.init(base.DummyProfiler(), {'session_name': ''}), inDialog) finally: enki.core.core._OLD_CONFIG_DIR = oldCfg enki.core.defines.CONFIG_DIR = currCfg