def test_116(self): """http://litmus.pculture.org/show_test.cgi?id=116 add multiple feeds to a folder Litmus Test Title:: 116 - add multiple feeds to a new folder Description: 1. Import 2 OPML file of some feeds and folders 2. select several feeds and add to new folder 3. confirm feeds in folders 4. Cleanup """ setAutoWaitTimeout(myLib.testvars.timeout) #set the search regions reg = MiroRegions() miro = MiroApp() miro.delete_all_podcasts(reg) opml_path = os.path.join(os.getenv("PCF_TEST_HOME"),"Miro","TestData","folder-test.opml") opml_path2 = os.path.join(os.getenv("PCF_TEST_HOME"),"Miro","TestData","folder-test2.opml") feed_list = ["Google", "Onion","two ronnies","Vimeo"] added_feeds = [] new_folder = "multi folder" #1. Add the feeds miro.import_opml(reg, opml_path) time.sleep(15) #give a chance to add and update miro.import_opml(reg, opml_path2) time.sleep(15) #give a chance to add and update #expand all the folders p = miro.get_podcasts_region(reg) miro.expand_feed_folder(reg, "GEEKY") miro.expand_feed_folder(reg, "FUN") #set the feeds region p = miro.get_podcasts_region(reg) #select multiple feeds for the folders p.click("BIRCHBOXTV") added_feeds = miro.multi_select(region=p,item_list=feed_list) if len(added_feeds) > 0: added_feeds.append("BIRCHBOXTV") else: self.fail("feeds not selected properly for adding to a folder") time.sleep(5) reg.m.click("New Folder") time.sleep(2) type(new_folder + "\n") time.sleep(5) feed_match = miro.click_podcast(reg, new_folder) rightClick(Location(feed_match)) if exists("Update",2): click(getLastMatch()) try: for feed in added_feeds: assert miro.tab_search(reg, title=feed,confirm_present=True), True except: self.fail("%s feed not found" % feed) finally: #cleanup miro.delete_all_podcasts(reg)
def test_322(self): """http://litmus.pculture.org/show_test.cgi?id=322 search and save as a podcast 1. Perform a search 2. Click off the tab 3. Click back and verify the search is remembered. 4. Cleanup """ setAutoWaitTimeout(60) reg = MiroRegions() miro = MiroApp() #Set Global Preferences miro.open_prefs(reg) prefs = PreferencesPanel() podcasts_tab = prefs.open_tab("Podcasts") podcasts_tab.autodownload_setting("Off") podcasts_tab.close_prefs() searches = {"blip": "python", "YouTube": "cosmicomics", "Revver": "Beiber", "Yahoo": "Canada", "DailyMotion": "Russia", "Metavid": "africa", "Mininova": "Creative Commons", "Goog": "Toronto"} for engine, term in searches.iteritems(): miro.click_sidebar_tab(reg, "search") miro.search_tab_search(reg, term, engine) time.sleep(10) reg.mtb.click("button_save_as_podcast.png") if engine == "blip": saved_search = engine else: saved_search = engine +" for" time.sleep(10) #give some time for everything to load up miro.click_podcast(reg, saved_search) miro.shortcut("r") time.sleep(5) miro.get_podcasts_region(reg) miro.tab_search(reg, term) try: self.assertTrue(reg.m.exists(engine)) miro.delete_feed(reg, engine) except: miro.log_result("322","test 322, failed for " +engine+": "+term, status="fail") #cleanup for x in searches.keys(): miro.delete_feed(reg, x)
def test_709(self): """http://litmus.pculture.org/show_test.cgi?id=709 create playlist from library search. 1. add a watched folder to get some items in the db 2. search in music tab 3. click Add to Playist button 4. accept name and verify created """ watched_feed = "TestData" playlist = "Johnson" item_list = ["Pancakes","Horizon"] reg = MiroRegions() miro = MiroApp() p = miro.get_podcasts_region(reg) miro.click_sidebar_tab(reg, "Music") miro.tab_search(reg, playlist) reg.mtb.click(Pattern("button_save_as_playlist.png")) time.sleep(3) type(Key.ENTER) miro.click_playlist(reg, playlist.upper()) miro.toggle_normal(reg) for title in item_list: miro.tab_search(reg, title,confirm_present=True)
def test_722(self): """http://litmus.pculture.org/show_test.cgi?id=722 delete feeds and folders confirm dialog. Litmus Test Title:: 722 - delete feeds confirm dialog Description: 1. Import OPML file of some feeds and folders 2. 1 feed and 1 folder 3. Delete, verify confirm dialog, and delete 4. Cleanup """ setAutoWaitTimeout(myLib.testvars.timeout) #set the search regions reg = MiroRegions() miro = MiroApp() miro.delete_all_podcasts(reg) opml_path = os.path.join(os.getenv("PCF_TEST_HOME"),"Miro","TestData","folder-test.opml") feed = "Featured" folder = "GEEKY" feedlist = ["Google", "Make", "GEEKY", "Featured"] #1. Add the feeds miro.import_opml(reg, opml_path) p = miro.get_podcasts_region(reg) miro.click_podcast(reg, feed) #2. Select the folder too keyDown(Key.SHIFT) p.click(folder) keyUp(Key.SHIFT) #3. Delete type(Key.DELETE) for x in feedlist: miro.count_images(reg, img=x,region="main",num_expected=1) type(Key.ENTER) time.sleep(2) #4. Cleanup miro.delete_all_podcasts(reg) p = miro.get_podcasts_region(reg) for x in feedlist: if not p.exists(x): miro.log_result("202","test_722")
def test_123(self): """http://litmus.pculture.org/show_test.cgi?id=123 add feed more than once. Litmus Test Title:: 123 - add a channel more than once Description: 1. Add a channel from the Miro Guide. 2. Copy the URL and use the Add Feed dialog to add it. 3. Verify feed not duplicated. 4. Cleanup """ #set the search regions reg = MiroRegions() miro = MiroApp() feed = "EEVblog" miro.click_sidebar_tab(reg, "Miro") gr = Region(reg.mtb) gr.setH(300) miro.click_sidebar_tab(reg, "Miro") gr.click(Pattern("guide_search.png")) type(feed + "\n") time.sleep(10) reg.m.find(Pattern("add_feed.png")) click(reg.m.getLastMatch()) time.sleep(20) miro.click_last_podcast(reg) time.sleep(5) #2. Copy the url and attempt to add it reg.t.click("Sidebar") tmpr = Region(reg.t.getLastMatch().below()) tmpr.setW(tmpr.getW()+200) tmpr.highlight(3) if tmpr.exists("Copy") or tmpr.exists("URL"): click(tmpr.getLastMatch()) time.sleep(2) miro.shortcut("n") time.sleep(2) type(Key.ENTER) #3. Verify feed not duplicated p = miro.get_podcasts_region(reg) time.sleep(2) miro.count_images(reg, img=feed,region="sidebar",num_expected=1) miro.delete_feed(reg, feed)
def test_198(self): """http://litmus.pculture.org/show_test.cgi?id=198 rename folder. Litmus Test Title:: 198 - rename feed folder Description: 1. Import OPML file of some feeds and folders 2. 1 feed and 1 folder 3. Delete, verify confirm dialog, and delete 4. Cleanup """ setAutoWaitTimeout(myLib.testvars.timeout) #set the search regions folder = "Great Stuff" new_name1 = "INCREDIBLE" new_name2 = "AWFUL" reg = MiroRegions() miro = MiroApp() reg.t.click("Sidebar") reg.t.click("Folder") time.sleep(2) type(folder + "\n") time.sleep(10) #give it 10 seconds to add the folder miro.click_podcast(reg, feed=folder) time.sleep(3) reg.t.click("Sidebar") reg.t.click("Rename") time.sleep(2) type(new_name1 + "\n") miro.click_podcast(reg, feed=new_name1) miro.restart_miro() p = miro.get_podcasts_region(reg) if not p.exists(new_name1): self.fail("rename did not persist after restart") else: p.rightClick(new_name1) p1 = Region(p.getLastMatch().nearby(200)) p1.click("Rename") time.sleep(2) type(new_name2 + "\n") miro.click_podcast(reg, feed=new_name2) miro.delete_feed(reg, new_name2)
def test_197(self): """http://litmus.pculture.org/show_test.cgi?id=197 drag feeds to a folder Litmus Test Title:: 197 - drag feeds to a folder Description: 1. Import OPML file of some feeds and folders 2. drag feeds to the folder 3. verify feeds in folder 4. Cleanup """ setAutoWaitTimeout(myLib.testvars.timeout) miro = MiroApp() #set the search regions miro.quit_miro() myLib.config.set_def_db_and_prefs() miro.restart_miro() time.sleep(10) reg = MiroRegions() miro = MiroApp() opml_path = os.path.join(os.getenv("PCF_TEST_HOME"),"Miro","TestData","folder-test2.opml") folder = "Best Feeds" feedlist = ["Vimeo", "BIRCHBOXTVTV"] #1. Add the feeds miro.import_opml(reg, opml_path) p = miro.get_podcasts_region(reg) for feed in feedlist: x = p.find(feed) y = p.find(folder) dragDrop(x,y) time.sleep(2) feed_match = miro.click_podcast(reg, folder) rightClick(Location(feed_match)) if exists("Update",2): click(getLastMatch()) for feed in feedlist: miro.tab_search(reg, title=feed,confirm_present=True) #cleanup miro.delete_all_podcasts(reg)
def test_199(self): """http://litmus.pculture.org/show_test.cgi?id=199 reorder folders in sidebar Litmus Test Title:: 199 - reorder folders in the sidebar Description: 1. Import OPML file of some feeds and folders 2. drag feeds to the folder 3. verify feeds in folder 4. Cleanup """ setAutoWaitTimeout(myLib.testvars.timeout) #set the search regions miro = MiroApp() miro.quit_miro() myLib.config.set_def_db_and_prefs() miro.restart_miro() time.sleep(10) reg = MiroRegions() miro = MiroApp() opml_path = os.path.join(os.getenv("PCF_TEST_HOME"),"Miro","TestData","folder-test.opml") #1. Add the feeds miro.import_opml(reg, opml_path) p = miro.get_podcasts_region(reg) x = p.find("GEEKY") y = p.find("Featured") dragDrop(x,y) time.sleep(2) p.click("Featured") ror = Region(p.getLastMatch().above(250)) if not ror.exists("GEEKY"): self.fail("GEEKY folder not moved above 'Featured' podcast") #Cleanup - select all the podcasts and delete miro.delete_all_podcasts(reg)
def test_138(self): #shortened as there no more feed counter and can't count too much stuff. """http://litmus.pculture.org/show_test.cgi?id=138 clear out old items. Litmus Test Title:: 138 Channels - clear out old items Description: 1. Add a feed that adds five new items each time it's updated. 2. Update the feed to add new items. 3. Modify old items settings to verify items cleared. 4. Cleanup """ #set the search regions reg = MiroRegions() miro = MiroApp() url = "http://bluesock.org/~willg/cgi-bin/newitemsfeed.cgi" feed = "my feed" miro.add_feed(reg, url,feed) miro.get_podcasts_region(reg) miro.tab_search(reg, "my feed") miro.toggle_list(reg) miro.count_images(reg, img="my feed",region="list",num_expected=5) miro.click_podcast(reg, feed) miro.shortcut("r") time.sleep(10) miro.get_podcasts_region(reg) if miro.count_images(reg, img="my feed",region="list",num_expected=10) == 10: miro.log_result("99","test_92") #verifies update podcast shortcut miro.click_podcast(reg, feed) for x in range(0,3): miro.shortcut("r") time.sleep(3) miro.open_podcast_settings(reg) miro.change_podcast_settings(reg, option="Podcast Items",setting="Keep 0") time.sleep(2) miro.get_podcasts_region(reg) miro.count_images(reg, img="my feed",region="list",num_expected=5) #4. cleanup miro.delete_feed(reg, "my feed")
def test_117(self): """http://litmus.pculture.org/show_test.cgi?id=117 delete multiple feeds then cancel. Litmus Test Title:: 117 - delete multiple feeds then cancel Description: 1. Add several feeds from list of guide feeds 2. Select them all 3. Delete, the cancel the delete 4. Cleanup """ #set the search regions reg = MiroRegions() miro = MiroApp() #Set Global Preferences miro.open_prefs(reg) prefs = PreferencesPanel() podcasts_tab = prefs.open_tab("Podcasts") podcasts_tab.autodownload_setting("Off") podcasts_tab.default_view_setting("Standard") podcasts_tab.close_prefs() url = "http://pculture.org/feeds_test/list-of-guide-feeds.xml" feed = "Static" feedlist = ["Center", "Earth"] #1. Add the feed and start dl miro.add_feed(reg, url,feed) for f in feedlist: miro.tab_search(reg, f) self.assertTrue(reg.m.exists("Add this")) reg.m.click("Add this") time.sleep(4) miro.tab_search(reg, "") miro.toggle_normal(reg) p = miro.get_podcasts_region(reg) miro.click_sidebar_tab(reg, "Music") miro.click_podcast(reg, feed) #2. Select them all keyDown(Key.SHIFT) for x in feedlist: if p.exists(x): p.click(x) else: print "could not find feed" +str(x) time.sleep(2) keyUp(Key.SHIFT) #3. Delete then cancel. Verify still exists Static List if reg.m.exists("Delete",4) or reg.m.exists("button_mv_delete_all.png",4): click(reg.m.getLastMatch()) else: self.fail("Can't find Delete All button in main view") miro.remove_confirm(reg, "cancel") p = miro.get_podcasts_region(reg) time.sleep(5) self.assertTrue(p.exists("Static",5)) #4. Cleanup feedlist.append("Static") for x in feedlist: print x miro.delete_feed(reg, x)