Exemplo n.º 1
0
 def test_what_is_this_in_the_version_information(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     Assert.equal(details_page.version_information_heading, "Version Information")
     details_page.expand_version_information()
     Assert.equal("What's this?", details_page.license_faq_text)
     license_faq = details_page.click_whats_this_license()
     Assert.equal("Frequently Asked Questions", license_faq.header_text)
Exemplo n.º 2
0
 def test_view_the_source_in_the_version_information(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     Assert.equal(details_page.version_information_heading, "Version Information")
     details_page.expand_version_information()
     Assert.equal("View the source", details_page.view_source_code_text)
     view_source = details_page.click_view_source_code()
     Assert.contains('/files/browse/', view_source.get_url_current_page())
 def test_what_is_this_in_the_version_information(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     assert details_page.version_information_heading == "Version Information"
     details_page.expand_version_information()
     assert "What's this?" == details_page.license_faq_text
     license_faq = details_page.click_whats_this_license()
     assert "Frequently Asked Questions" == license_faq.header_text)
Exemplo n.º 4
0
    def test_that_new_review_is_saved(self, mozwebqa, existing_user):
        # Step 1 - Login into AMO
        home_page = Home(mozwebqa)
        home_page.login(existing_user['email'], existing_user['password'])
        assert home_page.is_the_current_page
        assert home_page.header.is_user_logged_in

        # Step 2 - Load any addon detail page
        details_page = Details(mozwebqa, 'Memchaser')

        # Step 3 - Click on "Write review" button
        write_review_block = details_page.click_to_write_review()

        # Step 4 - Write a review
        body = 'Automatic addon review by Selenium tests %s' % datetime.now()
        write_review_block.enter_review_with_text(body)
        write_review_block.set_review_rating(1)
        review_page = write_review_block.click_to_save_review()

        # Step 5 - Assert review
        review = review_page.reviews[0]
        assert review.rating == 1
        assert review.author == existing_user['name']
        date = datetime.now(timezone('US/Pacific')).strftime("%B %d, %Y")
        # there are no leading zero-signs on day so we need to remove them too
        expected_date = date.replace(' 0', ' ')
        assert review.date == expected_date, 'Date of review does not match the expected value. '
                     'Expected: "%s" but found "%s"' % (expected_date, review.date)
Exemplo n.º 5
0
    def test_that_all_reviews_hyperlink_works(self, mozwebqa):
        """
        Test for Litmus 4843.
        https://litmus.mozilla.org/show_test.cgi?id=4843
        """
        #Open details page for Adblock Plus
        details_page = Details(mozwebqa, 'Adblock Plus')
        Assert.true(details_page.has_reviews)

        details_page.click_all_reviews_link()
        Assert.equal(details_page.review_count, 20)

        #Go to the last page and check that the next button is not present
        details_page.paginator.click_last_page()
        Assert.true(details_page.paginator.is_next_page_disabled)

        #Go one page back, check that it has 20 reviews
        #that the page number decreases and that the next link is visible
        page_number = details_page.paginator.page_number
        details_page.paginator.click_prev_page()
        Assert.false(details_page.paginator.is_next_page_disabled)
        Assert.equal(details_page.review_count, 20)
        Assert.equal(details_page.paginator.page_number, page_number - 1)

        #Go to the first page and check that the prev button is not present
        details_page.paginator.click_first_page()
        Assert.true(details_page.paginator.is_prev_page_disabled)

        #Go one page forward, check that it has 20 reviews,
        #that the page number increases and that the prev link is visible
        page_number = details_page.paginator.page_number
        details_page.paginator.click_next_page()
        Assert.false(details_page.paginator.is_prev_page_disabled)
        Assert.equal(details_page.review_count, 20)
        Assert.equal(details_page.paginator.page_number, page_number + 1)
Exemplo n.º 6
0
    def test_that_all_reviews_hyperlink_works(self, mozwebqa):
        # Open details page for MemChaser
        details_page = Details(mozwebqa, "Firebug")
        Assert.true(details_page.has_reviews)

        view_reviews = details_page.click_all_reviews_link()
        Assert.equal(len(view_reviews.reviews), 20)

        # Go to the last page and check that the next button is not present
        view_reviews.paginator.click_last_page()
        Assert.true(view_reviews.paginator.is_next_page_disabled)

        # Go one page back, check that it has 20 reviews
        # that the page number decreases and that the next link is visible
        page_number = view_reviews.paginator.page_number
        view_reviews.paginator.click_prev_page()
        Assert.false(view_reviews.paginator.is_next_page_disabled)
        Assert.equal(len(view_reviews.reviews), 20)
        Assert.equal(view_reviews.paginator.page_number, page_number - 1)

        # Go to the first page and check that the prev button is not present
        view_reviews.paginator.click_first_page()
        Assert.true(view_reviews.paginator.is_prev_page_disabled)

        # Go one page forward, check that it has 20 reviews,
        # that the page number increases and that the prev link is visible
        page_number = view_reviews.paginator.page_number
        view_reviews.paginator.click_next_page()
        Assert.false(view_reviews.paginator.is_prev_page_disabled)
        Assert.equal(len(view_reviews.reviews), 20)
        Assert.equal(view_reviews.paginator.page_number, page_number + 1)
Exemplo n.º 7
0
    def test_that_new_review_is_saved(self, mozwebqa):
        """
        Test for Litmus 22921.
        https://litmus.mozilla.org/show_test.cgi?id=22921
        """
        # Step 1 - Login into AMO
        home_page = Home(mozwebqa)
        home_page.login("browserID")
        Assert.true(home_page.is_the_current_page)
        Assert.true(home_page.header.is_user_logged_in)

        # Step 2 - Load any addon detail page
        details_page = Details(mozwebqa, 'Adblock Plus')

        # Step 3 - Click on "Write review" button
        write_review_block = details_page.click_to_write_review()

        # Step 4 - Write a review
        body = 'Automatic addon review by Selenium tests %s' % datetime.now()
        write_review_block.enter_review_with_text(body)
        write_review_block.set_review_rating(1)
        review_page = write_review_block.click_to_save_review()

        # Step 5 - Assert review
        review = review_page.reviews[0]
        Assert.equal(review.rating, 1)
        Assert.equal(review.author, mozwebqa.credentials['default']['name'])
        date = datetime.now().strftime("%B %d, %Y")
        # there are no leading zero-signs on day so we need to remove them too
        date = date.replace(' 0', ' ')
        Assert.equal(review.date, date)
        Assert.equal(review.text, body)
Exemplo n.º 8
0
 def test_that_whats_this_link_for_source_license_links_to_an_answer_in_faq(self, mozwebqa):
     """Test for Litmus 11530."""
     details_page = Details(mozwebqa, "Firebug")
     details_page.expand_version_information()
     user_faq_page = details_page.click_whats_this_license()
     Assert.not_none(re.match('(\w+\s*){3,}', user_faq_page.license_question))
     Assert.not_none(re.match('(\w+\s*){3,}', user_faq_page.license_answer))
    def test_that_verifies_the_url_of_the_statistics_page(self, mozwebqa):

        details_page = Details(mozwebqa, "Firebug")
        statistics_page = details_page.click_view_statistics()

        assert statistics_page.is_the_current_page
        assert "/statistics" in statistics_page.get_url_current_page()
    def test_that_compatible_applications_equal(self, mozwebqa):

        # browser
        firebug_page = Details(mozwebqa, self.firebug)
        firebug_page.expand_version_information()
        browser_compatible_applications = firebug_page.compatible_applications

        # api
        addons_xml = AddonsAPI(mozwebqa, self.firebug)
        xml_compatible_applications = addons_xml.get_compatible_applications()
        name = xml_compatible_applications[0]
        min_version = xml_compatible_applications[1]
        max_version = xml_compatible_applications[2]

        # E.g.: Works with Firefox 1.0
        meta_compat_prefix = 'Works with %s %s ' % (name, min_version)
        # E.g.: Works with Firefox 1.0 and later
        meta_compat_abbrev = meta_compat_prefix + 'and later'
        # E.g.: Works with Firefox 1.0 - 16.0a1
        meta_compat_full = "%s- %s" % (meta_compat_prefix, max_version)

        assert (browser_compatible_applications == meta_compat_full or
                browser_compatible_applications == meta_compat_abbrev or
                browser_compatible_applications.startswith(meta_compat_prefix)
                ), "Listed compat. versions don't match versions listed in API."
Exemplo n.º 11
0
    def test_that_all_reviews_hyperlink_works(self, base_url, selenium):
        # Open details page for MemChaser
        details_page = Details(base_url, selenium, "Firebug")
        assert details_page.has_reviews

        view_reviews = details_page.click_all_reviews_link()
        assert 20 == len(view_reviews.reviews)

        # Go to the last page and check that the next button is not present
        view_reviews.paginator.click_last_page()
        assert view_reviews.paginator.is_next_page_disabled

        # Go one page back, check that it has 20 reviews
        # that the page number decreases and that the next link is visible
        page_number = view_reviews.paginator.page_number
        view_reviews.paginator.click_prev_page()
        assert not view_reviews.paginator.is_next_page_disabled
        assert 20 == len(view_reviews.reviews)
        assert page_number - 1 == view_reviews.paginator.page_number

        # Go to the first page and check that the prev button is not present
        view_reviews.paginator.click_first_page()
        assert view_reviews.paginator.is_prev_page_disabled

        # Go one page forward, check that it has 20 reviews,
        # that the page number increases and that the prev link is visible
        page_number = view_reviews.paginator.page_number
        view_reviews.paginator.click_next_page()
        assert not view_reviews.paginator.is_prev_page_disabled
        assert 20 == len(view_reviews.reviews)
        assert page_number + 1 == view_reviews.paginator.page_number
Exemplo n.º 12
0
 def test_view_the_source_in_the_version_information(self, mozwebqa):
     details_page = Details(mozwebqa, "MemChaser")
     Assert.equal(details_page.version_information_heading, "Version Information")
     details_page.click_version_information_header()
     Assert.equal("View the source", details_page.view_source_code.text)
     details_page.view_source_code.click()
     Assert.contains('/files/browse/', details_page.get_url_current_page())
Exemplo n.º 13
0
 def test_what_is_this_in_the_version_information(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert 'Version Information' == details_page.version_information_heading
     details_page.expand_version_information()
     assert 'What\'s this?' == details_page.license_faq_text
     license_faq = details_page.click_whats_this_license()
     assert 'Frequently Asked Questions' == license_faq.header_text
Exemplo n.º 14
0
    def test_that_one_star_rating_increments(self, mozwebqa):
        """
        Test for Litmus 22916.
        https://litmus.mozilla.org/show_test.cgi?id=22916
        """
        # Step 1 - Login into AMO
        home_page = Home(mozwebqa)
        home_page.login("browserID")
        Assert.true(home_page.header.is_user_logged_in)

        # Step 2 - Go to add-ons listing page sorted by rating
        extensions_home_page = home_page.click_to_explore('Top Rated')

        # Step 3 - Pick an addon with no reviews
        extensions_home_page.paginator.click_last_page()
        addon = extensions_home_page.extensions[-1]  # the last one is without rating
        details_page = addon.click()

        # Step 4 - Click on the "Write review" button
        write_review_block = details_page.click_to_write_review()

        # Step 5 - Add review with 1-star rating
        body = 'Automatic addon review by Selenium tests'
        write_review_block.enter_review_with_text(body)
        write_review_block.set_review_rating(1)
        view_reviews = write_review_block.click_to_save_review()

        # Step 6 - Ensure rating increased by one
        view_reviews.breadcrumbs[2].click()
        details_page = Details(mozwebqa)
        new_rating_counter = details_page.get_rating_counter(1)
        Assert.equal(new_rating_counter, 1)
Exemplo n.º 15
0
 def test_view_the_source_in_the_version_information(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert 'Version Information' == details_page.version_information_heading
     details_page.expand_version_information()
     assert 'View the source' == details_page.view_source_code_text
     view_source = details_page.click_view_source_code()
     assert '/files/browse/' in view_source.get_url_current_page()
Exemplo n.º 16
0
    def test_that_new_review_is_saved(self, base_url, selenium, logged_in, user):
        details_page = Details(base_url, selenium, 'Memchaser')
        write_review_block = details_page.click_to_write_review()

        # Write a review
        body = 'Automatic addon review by Selenium tests %s' % datetime.now()
        write_review_block.enter_review_with_text(body)
        write_review_block.set_review_rating(1)
        review_page = write_review_block.click_to_save_review()

        # Assert review
        review = review_page.reviews[0]
        assert 1 == review.rating
        assert user['display_name'] == review.author
        date = datetime.now(timezone('UTC')).strftime('%B %d, %Y')
        # there are no leading zero-signs on day so we need to remove them too
        expected_date = date.replace(' 0', ' ')
        assert expected_date == review.date, 'Date of review does not match the expected value.'
        assert body == review.text, 'Review text does not match expected value.'

        review.delete()

        details_page = Details(base_url, selenium, 'Memchaser')
        review_page = details_page.click_all_reviews_link()

        for review in review_page.reviews:
            assert body not in review.text
 def test_view_the_source_in_the_version_information(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     assert details_page.version_information_heading == "Version Information"
     details_page.expand_version_information()
     assert "View the source" == details_page.view_source_code_text
     view_source = details_page.click_view_source_code()
     assert '/files/browse/' in view_source.get_url_current_page()
Exemplo n.º 18
0
    def test_that_verifies_the_url_of_the_statistics_page(self, mozwebqa):

        details_page = Details(mozwebqa, "Firebug")
        statistics_page = details_page.click_view_statistics()

        Assert.true(statistics_page.is_the_current_page)
        Assert.contains("/statistics", statistics_page.get_url_current_page())
Exemplo n.º 19
0
 def test_that_the_development_channel_expands(self, mozwebqa):
     details_page = Details(mozwebqa, 'Firebug')
     assert 'Development Channel' == details_page.development_channel_text
     assert '' == details_page.development_channel_content
     details_page.click_development_channel()
     assert details_page.development_channel_content is not None
     details_page.click_development_channel()
     assert '' == details_page.development_channel_content
Exemplo n.º 20
0
    def test_that_make_contribution_button_is_clickable_and_loads_paypal_frame_while_user_is_logged_in(self, base_url, selenium, logged_in):
        addon_page = Details(base_url, selenium, self.addon_name)
        contribution_snippet = addon_page.click_contribute_button()
        assert contribution_snippet.is_make_contribution_button_visible
        assert 'Make Contribution' == contribution_snippet.make_contribution_button_name

        contribution_snippet.click_make_contribution_button()
        assert addon_page.is_paypal_login_dialog_visible
Exemplo n.º 21
0
 def test_that_the_development_channel_expands(self, base_url, selenium):
     details_page = Details(base_url, selenium, 'Firebug')
     assert 'Development Channel' == details_page.development_channel_text
     assert '' == details_page.development_channel_content
     details_page.click_development_channel()
     assert details_page.development_channel_content is not None
     details_page.click_development_channel()
     assert '' == details_page.development_channel_content
Exemplo n.º 22
0
    def test_that_the_development_channel_expands(self, mozwebqa):
        details_page = Details(mozwebqa, 'Firebug')
        Assert.equal("Development Channel", details_page.development_channel_text)

        Assert.equal('', details_page.development_channel_content)
        details_page.click_development_channel()
        Assert.not_none(details_page.development_channel_content)
        details_page.click_development_channel()
        Assert.equal('', details_page.development_channel_content)
Exemplo n.º 23
0
 def test_that_external_link_leads_to_addon_website(self, base_url, selenium):
     # Step 1 - Open AMO Home
     # Step 2 - Open MemChaser Plus details page
     details_page = Details(base_url, selenium, 'MemChaser')
     website_link = details_page.website
     assert not website_link == ''
     # Step 3 - Follow external website link
     details_page.click_website_link()
     assert details_page.get_url_current_page() in website_link
Exemplo n.º 24
0
 def test_that_add_to_collection_flyout_for_anonymous_users(self, mozwebqa):
     """
     Test for Litmus 25711.
     https://litmus.mozilla.org/show_test.cgi?searchType=by_id&id=25711
     """
     details_page = Details(mozwebqa, 'Firebug')
     details_page.click_add_to_collection_widget()
     Assert.equal(details_page.collection_widget_button, 'Create an Add-ons Account')
     Assert.equal(details_page.collection_widget_login_link, 'log in to your current account')
Exemplo n.º 25
0
    def test_user_my_favorites_page(self, base_url, selenium, logged_in):
        details_page = Details(base_url, selenium, 'Firebug')
        details_page.click_add_to_favorites()
        assert details_page.is_addon_marked_as_favorite

        home_page = Home(base_url, selenium)
        my_favorites_page = home_page.header.click_my_favorites()
        assert my_favorites_page.is_the_current_page
        assert 'My Favorite Add-ons' == my_favorites_page.my_favorites_header_text
Exemplo n.º 26
0
    def test_that_external_link_leads_to_addon_website(self, mozwebqa):

        # Step 1 - Open AMO Home
        # Step 2 - Open MemChaser Plus details page
        details_page = Details(mozwebqa, 'MemChaser')
        website_link = details_page.website
        Assert.true(website_link != '')
        # Step 3 - Follow external website link
        details_page.click_website_link()
        Assert.contains(details_page.get_url_current_page(), website_link)
    def test_that_learn_more_link_is_correct(self, base_url, selenium):
        # api
        addons_xml = AddonsAPI(base_url, self.firebug)
        learn_more_url = addons_xml.get_learn_more_url()

        # browser
        details_page = Details(base_url, selenium, self.firebug)
        details_page.get_url(learn_more_url)

        assert self.firebug in details_page.page_title
Exemplo n.º 28
0
    def test_that_make_contribution_button_is_clickable_and_loads_paypal_frame(self, mozwebqa):
        addon_page = Details(mozwebqa, self.addon_name)

        contribution_snippet = addon_page.click_contribute_button()

        Assert.true(contribution_snippet.is_make_contribution_button_visible)
        Assert.equal("Make Contribution", contribution_snippet.make_contribution_button_name)

        contribution_snippet.click_make_contribution_button()
        Assert.true(addon_page.is_paypal_login_dialog_visible)
Exemplo n.º 29
0
    def test_that_clicking_user_reviews_slides_down_page_to_reviews_section(self, mozwebqa):
        """
        Test for Litmus 25708.
        https://litmus.mozilla.org/show_test.cgi?searchType=by_id&id=25708
        """
        details_page = Details(mozwebqa, 'firebug')
        details_page.click_user_reviews_link()

        Assert.true(details_page.is_reviews_section_visible)
        Assert.true(details_page.is_reviews_section_in_view)
Exemplo n.º 30
0
 def test_what_is_this_in_the_version_information(self, mozwebqa):
     """
     https://litmus.mozilla.org/show_test.cgi?id=7906
     """
     details_page = Details(mozwebqa, "MemChaser")
     Assert.equal(details_page.version_information_heading, "Version Information")
     details_page.expand_version_information()
     Assert.equal("What's this?", details_page.license_faq_text)
     license_faq = details_page.click_whats_this_license()
     Assert.equal("Frequently Asked Questions", license_faq.header_text)
Exemplo n.º 31
0
 def test_that_tags_are_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert details_page.are_tags_visible
Exemplo n.º 32
0
 def test_that_clicking_user_reviews_slides_down_page_to_reviews_section(
         self, mozwebqa):
     details_page = Details(mozwebqa, 'firebug')
     details_page.click_user_reviews_link()
     assert details_page.is_reviews_section_visible
     assert details_page.is_reviews_section_in_view
Exemplo n.º 33
0
 def test_that_summary_is_displayed(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     # check that the summary is not empty
     assert re.match('(\w+\s*){3,}', details_page.summary) is not None
Exemplo n.º 34
0
 def test_that_in_often_used_with_addons_are_displayed(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     assert u'Often used with\u2026' == details_page.often_used_with_header
     assert details_page.is_often_used_with_list_visible
Exemplo n.º 35
0
 def test_author_addons_when_there_are_multiple_authors(
         self, base_url, selenium):
     addon_with_multiple_authors = 'firebug'
     page = Details(base_url, selenium, addon_with_multiple_authors)
     assert len(page.authors) > 1
     assert 'Other add-ons by these authors' == page.author_addons.heading
Exemplo n.º 36
0
 def test_other_addons_label_when_there_is_only_one_author(self, base_url, selenium):
     addon_with_one_author = 'MemChaser'
     detail_page = Details(base_url, selenium, addon_with_one_author)
     assert len(detail_page.authors) == 1
     assert 'Other add-ons by %s' % detail_page.authors[0] == detail_page.other_addons_by_authors_text
Exemplo n.º 37
0
 def test_that_details_page_has_breadcrumb(self, base_url, selenium):
     detail_page = Details(base_url, selenium, 'firebug')
     assert 'Add-ons for Firefox' == detail_page.breadcrumbs[0].text
     assert 'Extensions' == detail_page.breadcrumbs[1].text
     assert 'Firebug' == detail_page.breadcrumbs[2].text
Exemplo n.º 38
0
 def test_that_clicking_user_reviews_slides_down_page_to_reviews_section(
         self, base_url, selenium):
     details_page = Details(base_url, selenium, 'firebug')
     details_page.click_user_reviews_link()
     assert details_page.is_reviews_section_visible
     assert details_page.is_reviews_section_in_view
Exemplo n.º 39
0
 def test_that_install_button_is_clickable(self, base_url, selenium):
     details_page = Details(base_url, selenium, 'firebug')
     assert 'active' in details_page.click_and_hold_install_button_returns_class_value(
     )
Exemplo n.º 40
0
 def test_that_summary_is_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     # check that the summary is not empty
     assert re.match('(\w+\s*){3,}', details_page.summary) is not None
Exemplo n.º 41
0
 def test_that_about_this_addon_is_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert 'About this Add-on' == details_page.about_addon
     assert re.match('(\w+\s*){3,}', details_page.description) is not None
Exemplo n.º 42
0
 def test_that_dropdown_menu_is_present_after_click_on_other_apps(
         self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert 'Other Applications' == details_page.header.menu_name
     details_page.header.hover_over_other_apps_menu()
     assert details_page.header.is_other_apps_dropdown_menu_visible
Exemplo n.º 43
0
 def test_that_add_a_review_button_works(self, base_url, selenium,
                                         logged_in):
     details_page = Details(base_url, selenium, 'Firebug')
     review_box = details_page.click_to_write_review()
     assert review_box.is_review_box_visible
Exemplo n.º 44
0
 def test_that_reviews_are_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert 'Reviews' == details_page.review_title
     assert details_page.has_reviews
     for review in details_page.review_details:
         assert review is not None
Exemplo n.º 45
0
 def test_that_addon_name_is_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     # check that the name is not empty
     assert not details_page.title == ''
Exemplo n.º 46
0
 def test_that_whats_this_link_for_source_license_links_to_an_answer_in_faq(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     details_page.expand_version_information()
     user_faq_page = details_page.click_whats_this_license()
     assert re.match('(\w+\s*){3,}', user_faq_page.license_question) is not None
     assert re.match('(\w+\s*){3,}', user_faq_page.license_answer) is not None
Exemplo n.º 47
0
 def test_open_close_functionality_for_image_viewer(self, base_url, selenium):
     detail_page = Details(base_url, selenium, 'firebug')
     image_viewer = detail_page.previewer.click_image()
     assert image_viewer.is_visible
     image_viewer.close()
     assert not image_viewer.is_visible
Exemplo n.º 48
0
 def test_part_of_collections_are_displayed(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     assert 'Part of these Collections' == details_page.part_of_collections_header
     assert len(details_page.part_of_collections) > 0
Exemplo n.º 49
0
 def test_that_license_link_works(self, base_url, selenium):
     addon_name = 'Firebug'
     details_page = Details(base_url, selenium, addon_name)
     assert 'BSD License' == details_page.license_link_text
     license_link = details_page.license_site
     assert license_link is not None
Exemplo n.º 50
0
 def click(self):
     self.root.find_element(*self._name_locator).click()
     from pages.desktop.details import Details
     return Details(self.base_url, self.selenium)
Exemplo n.º 51
0
 def test_that_add_to_collection_flyout_for_anonymous_users(
         self, base_url, selenium):
     details_page = Details(base_url, selenium, 'Firebug')
     details_page.click_add_to_collection_widget()
     assert 'Create an Add-ons Account' == details_page.collection_widget_button
     assert 'log in to your current account' == details_page.collection_widget_login_link
Exemplo n.º 52
0
 def test_other_addons_label_when_there_are_multiple_authors(
         self, base_url, selenium):
     addon_with_multiple_authors = 'firebug'
     detail_page = Details(base_url, selenium, addon_with_multiple_authors)
     assert len(detail_page.authors) > 1
     assert 'Other add-ons by these authors' == detail_page.other_addons_by_authors_text
Exemplo n.º 53
0
 def test_that_tags_are_displayed(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     assert details_page.are_tags_visible
Exemplo n.º 54
0
 def test_that_in_often_used_with_addons_are_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert u'Often used with\u2026' == details_page.often_used_with_header
     assert details_page.is_often_used_with_list_visible
Exemplo n.º 55
0
 def test_that_reviews_are_displayed(self, mozwebqa):
     details_page = Details(mozwebqa, "Firebug")
     assert 'Reviews' == details_page.review_title
     assert details_page.has_reviews
     for review in details_page.review_details:
         assert review is not None
Exemplo n.º 56
0
 def test_the_developers_comments_section(self, base_url, selenium):
     details_page = Details(base_url, selenium, 'Firebug')
     assert u'Developer\u2019s Comments' == details_page.devs_comments_title
     details_page.expand_devs_comments()
     assert details_page.is_devs_comments_section_expanded
     assert re.match('(\w+\s*){3,}', details_page.devs_comments_message) is not None
Exemplo n.º 57
0
 def test_that_install_button_is_clickable(self, mozwebqa):
     details_page = Details(mozwebqa, 'firebug')
     assert 'active' in details_page.click_and_hold_install_button_returns_class_value(
     )
Exemplo n.º 58
0
 def test_that_clicking_info_link_slides_down_page_to_version_info(self, base_url, selenium):
     details_page = Details(base_url, selenium, 'firebug')
     details_page.click_version_info_link()
     assert details_page.version_info_link == details_page.version_information_href
     assert details_page.is_version_information_section_expanded
     assert details_page.is_version_information_section_in_view
Exemplo n.º 59
0
 def test_that_register_login_link_is_present_in_addon_details_page(
         self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert details_page.header.is_register_link_visible, 'Register link is not visible'
     assert details_page.header.is_login_link_visible, 'Login links is not visible'
Exemplo n.º 60
0
 def test_part_of_collections_are_displayed(self, base_url, selenium):
     details_page = Details(base_url, selenium, "Firebug")
     assert 'Part of these Collections' == details_page.part_of_collections_header
     assert len(details_page.part_of_collections) > 0