def test_that_themes_can_be_sorted_by_name(self): """ Test for Litmus 11727, 4839 """ amo_home_page = AddonsHomePage(self.selenium) amo_themes_page = amo_home_page.click_themes() amo_themes_page.click_sort_by("name") addons = amo_themes_page.addon_names addons_set = set(addons) self.assertEquals(len(addons), len(addons_set), "There are duplicates in the names") addons_orig = addons addons.sort() [ self.assertEqual(addons_orig[i], addons[i]) for i in xrange(len(addons)) ] amo_themes_page.page_forward() addons = amo_themes_page.addon_names addons_set = set(addons) self.assertEquals(len(addons), len(addons_set), "There are duplicates in the names") addons_orig = addons addons.sort() [ self.assertEqual(addons_orig[i], addons[i]) for i in xrange(len(addons)) ]
def test_that_themes_can_be_sorted_by_updated_date(self): """ test for litmus 11750""" amo_home_page = AddonsHomePage(self.selenium) amo_themes_page = amo_home_page.click_themes() amo_themes_page.click_sort_by("updated") addons = amo_themes_page.addon_names addons_set = set(addons) self.assertEquals(len(addons), len(addons_set), "There are duplicates in the names") addon_dates = amo_themes_page.addon_update_dates addons_orig = addon_dates addon_dates.sort() addon_dates.reverse() [ self.assertEqual(addons_orig[i], addon_dates[i]) for i in xrange(len(addons)) ] amo_themes_page.page_forward() addon_dates = amo_themes_page.addon_update_dates addons_orig = addon_dates addon_dates.sort() addon_dates.reverse() [ self.assertEqual(addons_orig[i], addon_dates[i]) for i in xrange(len(addons)) ]
def test_that_entering_a_long_string_returns_no_results(self): """ Litmus 4856 https://litmus.mozilla.org/show_test.cgi?id=4856 """ amo_home_page = AddonsHomePage(self.selenium) amo_search_page = amo_home_page.search_for("a" * 255) self.assertTrue(amo_search_page.is_text_present("No results found.")) results_count = amo_search_page.results_count self.assertTrue("0 - 0 of 0" in results_count)
def test_that_character_escaping_doesnt_go_into_the_test(self): """ Test for Litmus 4857 https://litmus.mozilla.org/show_test.cgi?id=4857""" amo_home_page = AddonsHomePage(self.selenium) amo_search_page = amo_home_page.search_for("personas%20plus") self.assertTrue(amo_search_page.is_text_present("No results found.")) results_count = amo_search_page.results_count self.assertTrue("0 - 0 of 0" in results_count)
def test_that_searching_with_unicode_characters_returns_results(self): """ Litmus 9575 https://litmus.mozilla.org/show_test.cgi?id=9575 """ amo_home_page = AddonsHomePage(self.selenium) search_str = u'\u0421\u043b\u043e\u0432\u0430\u0440\u0438 \u042f\u043d\u0434\u0435\u043a\u0441' amo_search_page = amo_home_page.search_for(search_str) self.assertTrue(amo_search_page.is_text_present(search_str)) results_count = amo_search_page.results_count self.assertFalse("0 - 0 of 0" in results_count)
def test_that_addons_count_are_equal_between_amo_and_discovery(self): """ TestCase for Litmus 15066 """ amo_home_page = AddonsHomePage(self.selenium) amo_download_count = amo_home_page.download_count.replace(",","") discovery_pane = DiscoveryPane(self.selenium, self.basepath) discovery_download_count_text = discovery_pane.download_count download_count = re.search("Add-ons downloaded: (.+)", discovery_download_count_text).group(1) download_count = download_count.replace(",","") self.assertEquals(amo_download_count, download_count)
def test_that_searching_with_substrings_returns_results(self): """ Litmus 9561 https://litmus.mozilla.org/show_test.cgi?id=9561 """ amo_home_page = AddonsHomePage(self.selenium) amo_search_page = amo_home_page.search_for("fox") self.assertFalse(amo_search_page.is_text_present("No results found.")) results_count = amo_search_page.results_count self.assertFalse("0 - 0 of 0" in results_count) matches = re.search(self._total_count_regex, results_count) self.assertTrue(int(matches.group(1)) > 1)
def test_that_search_all_add_ons_results_have_pagination_that_moves_through_results( self): """ Test for litmus 4839 https://litmus.mozilla.org/show_test.cgi?id=4839 """ amo_home_page = AddonsHomePage(self.selenium) amo_search_page = amo_home_page.search_for("addon") first_expected = 1 second_expected = 20 # Go Forward 10 times for i in range(10): amo_search_page.page_forward() results_count = amo_search_page.results_count matches = re.search(self._count_regex, results_count) first_count = matches.group(1) second_count = matches.group(2) first_expected += 20 second_expected += 20 self.assertEqual(str(first_expected), first_count) self.assertEqual(str(second_expected), second_count) # Go Back 10 Times for i in range(10): amo_search_page.page_back() results_count = amo_search_page.results_count matches = re.search(self._count_regex, results_count) first_count = matches.group(1) second_count = matches.group(2) first_expected -= 20 second_expected -= 20 self.assertEqual(str(first_expected), first_count) self.assertEqual(str(second_expected), second_count)
def test_navigate_to_detail_page_from_addon_search_page(self, testsetup): home_page = AddonsHomePage(testsetup) search_page = home_page.search_for("Firebug") detail_page = search_page.click_addon("Firebug") Assert.equal("Firebug :: Add-ons for Firefox", detail_page.page_title)
def test_type_method_and_AddonHomePage(self): addon_search_page = AddonsHomePage(self.selenium) self.selenium.type("name=q", "Pixlr Grabber")