def testSaveSession_09(self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController self.application.wikiroot = self.wikiroot self.application.selectedPage = self.wikiroot["Страница 1"] controller = SessionController(self.application) storage = SessionStorage(self.application.config) storage.save(controller.getCurrentSession(), "session1") tabsController = self.application.mainWindow.tabsController tabsController.openInTab(self.wikiroot["Страница 2"], True) storage.save(controller.getCurrentSession(), "session2") otherStorage = SessionStorage(self.application.config) sessions = otherStorage.getSessions() self.assertEqual(len(sessions), 2) self.assertEqual(len(sessions["session1"].pages), 1) self.assertEqual(sessions["session1"].pages[0], self._getPageLink(self.wikiroot["Страница 1"])) self.assertEqual(sessions["session1"].currentTab, 0) self.assertEqual(len(sessions["session2"].pages), 2) self.assertEqual(sessions["session2"].pages[0], self._getPageLink(self.wikiroot["Страница 1"])) self.assertEqual(sessions["session2"].pages[1], self._getPageLink(self.wikiroot["Страница 2"])) self.assertEqual(sessions["session2"].currentTab, 1)
def testRename_08(self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController self.application.wikiroot = self.wikiroot self.application.selectedPage = self.wikiroot["Страница 1"] controller = SessionController(self.application) storage = SessionStorage(self.application.config) storage.save(controller.getCurrentSession(), "session1") storage.save(controller.getCurrentSession(), "session2") storage.rename("session1", "Абырвалг ") otherStorage = SessionStorage(self.application.config) sessions = otherStorage.getSessions() self.assertEqual(len(sessions), 2) self.assertEqual(sorted(sessions.keys())[0], "session2") self.assertEqual(sorted(sessions.keys())[1], "Абырвалг") sessions = storage.getSessions() self.assertEqual(len(sessions), 2) self.assertEqual(sorted(sessions.keys())[0], "session2") self.assertEqual(sorted(sessions.keys())[1], "Абырвалг")
def testRemoveSession_02(self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController self.application.wikiroot = self.wikiroot self.application.selectedPage = self.wikiroot["Страница 1"] controller = SessionController(self.application) storage = SessionStorage(self.application.config) storage.save(controller.getCurrentSession(), "session1") storage.save(controller.getCurrentSession(), "session2") otherStorage = SessionStorage(self.application.config) sessions = otherStorage.getSessions() self.assertEqual(len(sessions), 2) # Удалим несуществующую сессию. При этом ничего не должно происходить storage.remove("session1") otherStorage = SessionStorage(self.application.config) sessions = otherStorage.getSessions() self.assertEqual(len(sessions), 1) self.assertEqual(list(sessions.keys())[0], "session2") sessions = storage.getSessions() self.assertEqual(len(sessions), 1) self.assertEqual(list(sessions.keys())[0], "session2")
def testSaveSession_08 (self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController Application.wikiroot = self.wikiroot Application.selectedPage = self.wikiroot[u"Страница 1"] controller = SessionController (Application) storage = SessionStorage(Application.config) storage.save (controller.getCurrentSession(), u"session1") storage.save (controller.getCurrentSession(), u"session2") otherStorage = SessionStorage(Application.config) sessions = otherStorage.getSessions() self.assertEqual (len (sessions), 2) self.assertEqual (len (sessions["session1"].pages), 1) self.assertEqual (sessions["session1"].pages[0], self._getPageLink (self.wikiroot[u"Страница 1"])) self.assertEqual (sessions["session1"].currentTab, 0) self.assertEqual (len (sessions["session2"].pages), 1) self.assertEqual (sessions["session2"].pages[0], self._getPageLink (self.wikiroot[u"Страница 1"])) self.assertEqual (sessions["session2"].currentTab, 0)
def testRename_07(self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController self.application.wikiroot = self.wikiroot self.application.selectedPage = self.wikiroot["Страница 1"] controller = SessionController(self.application) storage = SessionStorage(self.application.config) storage.save(controller.getCurrentSession(), "session1") storage.save(controller.getCurrentSession(), "session2") self.assertRaises(ValueError, storage.rename, "session1", " ")
def testRename_01 (self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController Application.wikiroot = self.wikiroot Application.selectedPage = self.wikiroot[u"Страница 1"] controller = SessionController (Application) storage = SessionStorage(Application.config) storage.save (controller.getCurrentSession(), u"session1") storage.save (controller.getCurrentSession(), u"session2") self.assertRaises (KeyError, storage.rename, u"invalid", u"Абырвалг")
def testSessionSingleTab (self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController Application.wikiroot = self.wikiroot Application.selectedPage = self.wikiroot[u"Страница 1"] sessionName = u"Имя сессии" controller = SessionController(Application) storage = SessionStorage(Application.config) storage.save (controller.getCurrentSession(), sessionName) sessions = storage.getSessions() self.assertEqual (len (sessions), 1) self.assertEqual (len (sessions[sessionName].pages), 1) self.assertEqual (sessions[sessionName].pages[0], self._getPageLink (self.wikiroot[u"Страница 1"])) self.assertEqual (sessions[sessionName].currentTab, 0)
def testSaveSession_07(self): from sessions.sessionstorage import SessionStorage from sessions.sessioncontroller import SessionController tabsController = self.application.mainWindow.tabsController # Создадим UID, а потом проверим, что они нормально прочитаются в # режиме только для чтения self._getPageLink(self.wikiroot["Страница 1"]) self._getPageLink(self.wikiroot["Страница 2"]) wiki = WikiDocument.load(self.wikiroot.path, True) self.application.wikiroot = wiki self.application.selectedPage = wiki["Страница 1"] tabsController.openInTab(wiki["Страница 2"], True) sessionName = "Имя сессии" controller = SessionController(self.application) session = controller.getCurrentSession() # Сохраним сессию дважды под одним и тем же именем storage = SessionStorage(self.application.config) storage.save(session, sessionName) storage.save(session, sessionName) otherStorage = SessionStorage(self.application.config) sessions = otherStorage.getSessions() self.assertEqual(len(sessions), 1) self.assertEqual(len(sessions[sessionName].pages), 2) self.assertEqual(sessions[sessionName].pages[0], self._getPageLink(wiki["Страница 1"])) self.assertEqual(sessions[sessionName].pages[1], self._getPageLink(wiki["Страница 2"])) self.assertEqual(sessions[sessionName].currentTab, 1) self.assertTrue(sessions[sessionName].readonly)