def load_profile(self, path, profile_frame=None): """load .profile.solipsis""" # clean for view in self.views.values(): view.reset_files() # check path if path and path.endswith('.prf'): path = path[:-4] # rebuild & load doc file_doc = FileDocument() file_doc.load(path) cache_doc = CacheDocument() cache_doc.import_document(file_doc) self.reset_document(cache_doc) self.add_document(file_doc) # rebuild view if profile_frame: gui_view = GuiView(cache_doc, profile_frame) html_view = HtmlView(cache_doc, profile_frame.preview_tab.html_preview, True) self.reset_view(gui_view) self.add_view(html_view) else: print_view = PrintView(cache_doc) self.reset_view(print_view) for view in self.views.values(): view.import_document(cache_doc) # load blogs self.blogs = load_blogs(path) self.update_blogs()
class ProfileTest(unittest.TestCase): """test interactactions between profiles""" def setUp(self): """override one in unittest.TestCase""" # bruce doc = FileDocument(PROFILE_BRUCE, PROFILE_DIRECTORY) self.assert_(doc.load()) self.bruce_doc = CacheDocument(PROFILE_BRUCE, PROFILE_DIRECTORY) self.bruce_doc.import_document(doc) # demi self.demi_doc = FileDocument(PROFILE_DEMI, PROFILE_DIRECTORY) self.assert_(self.demi_doc.load()) def test_bruce(self): """import bruce data""" self.assertEquals("Bruce", self.bruce_doc.get_firstname()) self.assertEquals("Willis", self.bruce_doc.get_lastname()) self.assertEquals("*****@*****.**", self.bruce_doc.get_email()) self.assertEquals({'City': u'', 'Country': u'', 'Favourite Book': u'', 'music': u'jazz', 'Favourite Movie': u'', 'Sport': u'', 'Studies': u'', 'film': u'Die Hard'}, self.bruce_doc.get_custom_attributes()) def test_peer_status(self): self.assertEquals(self.demi_doc.has_peer(self.bruce_doc.pseudo), False) self.demi_doc.fill_data((self.bruce_doc.pseudo, self.bruce_doc)) self.assertEquals(self.demi_doc.has_peer(self.bruce_doc.pseudo), True) self.demi_doc.make_friend(self.bruce_doc.pseudo) self.assertEquals(self.demi_doc.has_peer(self.bruce_doc.pseudo), True) self.demi_doc.unmark_peer(self.bruce_doc.pseudo) self.assertEquals(self.demi_doc.has_peer(self.bruce_doc.pseudo), False)
def Enable(self): """ All real actions involved in initializing the service should be defined here, not in the constructor. This includes e.g. opening sockets, collecting data from directories, etc. """ # init windows main_window = self.service_api.GetMainWindow() self.profile_frame = ProfileFrame(main_window, -1, "") # create views & doc file_doc = FileDocument() file_doc.load(os.path.join(PROFILE_DIR, PROFILE_FILE)) cache_doc = CacheDocument() cache_doc.import_document(file_doc) gui_view = GuiView(cache_doc, self.profile_frame) html_view = HtmlView(cache_doc, self.profile_frame.preview_tab.html_preview, True) self.facade.add_document(file_doc) self.facade.add_document(cache_doc) self.facade.add_view(gui_view) self.facade.add_view(html_view) self.facade.refresh_html_preview() # Set up main GUI hooks menu = wx.Menu() for action, method in self.MAIN_ACTION.iteritems(): item_id = wx.NewId() menu.Append(item_id, _(action)) def _clicked(event): """call profile from main menu""" method() wx.EVT_MENU(main_window, item_id, _clicked) self.service_api.SetMenu(self.GetTitle(), menu) # launch network self.network.start_listening()
def run(): """launch gui of profile""" #set up GUI import gettext gettext.install("app") # replace with the appropriate catalog name app = wx.PySimpleApp(0) wx.InitAllImageHandlers() profile_frame = ProfileFrame(None, -1, "") #set up facade facade = get_facade() file_doc = FileDocument() file_doc.load(os.path.join(PROFILE_DIR, PROFILE_FILE)) cache_doc = CacheDocument() cache_doc.import_document(file_doc) gui_view = GuiView(cache_doc, profile_frame) html_view = HtmlView(cache_doc, profile_frame.preview_tab.html_preview, True) facade.add_document(file_doc) facade.add_document(cache_doc) facade.add_view(gui_view) facade.add_view(html_view) facade.refresh_html_preview() #launch gui app.SetTopWindow(profile_frame) profile_frame.Show() app.MainLoop()
class ProfileTest(unittest.TestCase): """test interactactions between profiles""" def setUp(self): """override one in unittest.TestCase""" # bruce doc = FileDocument() self.assert_(doc.load(TEST_BRUCE)) self.bruce_doc = CacheDocument() self.bruce_doc.import_document(doc) # demi self.demi_doc = FileDocument() self.assert_(self.demi_doc.load(TEST_DEMI)) def test_bruce(self): """import bruce data""" self.assertEquals("Bruce", self.bruce_doc.get_firstname()) self.assertEquals("Willis", self.bruce_doc.get_lastname()) self.assertEquals("john", self.bruce_doc.get_pseudo()) self.assertEquals("*****@*****.**", self.bruce_doc.get_email()) self.assertEquals("01/06/1947", self.bruce_doc.get_birthday()) self.assertEquals("English", self.bruce_doc.get_language()) self.assertEquals("Hill", self.bruce_doc.get_address()) self.assertEquals("920", self.bruce_doc.get_postcode()) self.assertEquals("Los Angeles", self.bruce_doc.get_city()) self.assertEquals("US", self.bruce_doc.get_country()) self.assertEquals("Lots of movies, quite famous, doesn't look much but very effective", self.bruce_doc.get_description()) self.assertEquals([u'cinema', u'theatre', u'cop', u'action'], self.bruce_doc.get_hobbies()) self.assertEquals({'music': u'jazz', 'film': u'Die Hard'}, self.bruce_doc.get_custom_attributes())
def test_load_and_save(self): self.document.load(TEST_PROFILE) new_doc = CacheDocument() new_doc.import_document(self.document) new_doc.remove_repository(REPO) self.assertEquals(new_doc.get_files(), {}) new_doc.add_repository(REPO+u"/data/profiles") new_doc.add_repository(REPO+u"/data/subdir1") self.assertEquals(new_doc.get_files()[REPO+u"/data/profiles"]._shared, False) self.assert_(new_doc.get_files()[REPO+u"/data/subdir1"] != None) new_doc.save("data/profiles/toto")
def EnableBasic(self): """enable non graphic part""" # TODO: expose interface of facade to netClient # create views & doc file_doc = FileDocument() file_doc.load(os.path.join(PROFILE_DIR, PROFILE_FILE)) cache_doc = CacheDocument() cache_doc.import_document(file_doc) print_view = PrintView(cache_doc) self.facade.add_document(cache_doc) self.facade.add_view(print_view) # launch network self.network.start_listening()
def test_load_and_save(self): self.document.load() new_doc = CacheDocument(PROFILE_TATA, PROFILE_DIRECTORY) new_doc.import_document(self.document) new_doc.remove_repository(REPO) self.assertEquals(new_doc.get_files(), {}) new_doc.add_repository(REPO+u"/data/profiles") new_doc.add_repository(REPO+u"/data/subdir1") self.assertEquals(new_doc.get_files()[REPO+u"/data/profiles"]._shared, False) self.assert_(new_doc.get_files()[REPO+u"/data/subdir1"] != None) new_doc.save() check_doc = FileDocument(PROFILE_TATA, PROFILE_DIRECTORY) check_doc.load() self.assertEquals(check_doc.get_files()[REPO+u"/data/profiles"]._shared, False) self.assert_(check_doc.get_files()[REPO+u"/data/subdir1"] != None)
def test_import(self): """import file document into cache document""" self.document.load(TEST_PROFILE) new_doc = CacheDocument() new_doc.import_document(self.document) self._assertContent(new_doc)
def test_import(self): self.document.load(TEST_PROFILE) new_doc = CacheDocument() new_doc.import_document(self.document) self._assertContent(new_doc)
def test_import(self): self.document.load() new_doc = CacheDocument(PROFILE_TEST, PROFILE_DIRECTORY) new_doc.import_document(self.document) self._assertContent(new_doc)