Exemplo n.º 1
0
    def test_that_new_review_is_saved(self, mozwebqa):
        """ Litmus 22921
            https://litmus.mozilla.org/show_test.cgi?id=22921 """
        # Step 1 - Login into AMO
        amo_home_page = AddonsHomePage(mozwebqa)
        amo_home_page.login()
        Assert.true(amo_home_page.is_the_current_page)
        Assert.true(amo_home_page.header.is_user_logged_in)

        # Step 2 - Load any addon detail page
        details_page = AddonsDetailsPage(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'
        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.review()
        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.º 2
0
 def test_that_clicking_info_link_slides_down_page_to_version_info(self, mozwebqa):
     """ Test for Litmus 25725
         https://litmus.mozilla.org/show_test.cgi?id=25725 """
     amo_details_page = AddonsDetailsPage(mozwebqa, 'firebug')
     Assert.true(amo_details_page.is_version_info_link_visible)
     amo_details_page.click_version_info_link()
     Assert.equal(amo_details_page.version_info_link, amo_details_page.version_information)
     Assert.true(amo_details_page.is_version_information_section_expanded)
     Assert.true(amo_details_page.does_page_scroll_to_version_information_section)
Exemplo n.º 3
0
 def test_that_external_link_leads_to_addon_website(self, mozwebqa):
     """ Litmus 11809
         https://litmus.mozilla.org/show_test.cgi?id=11809 """
     # Step 1 - Open AMO homepage
     # Step 2 - Open Adblock Plus details page
     details_page = AddonsDetailsPage(mozwebqa, 'Adblock Plus')
     website_link = details_page.website
     Assert.true(website_link != '')
     # Step 3 - Follow external website link
     details_page.click_website_link()
     Assert.true(website_link in details_page.get_url_current_page())
Exemplo n.º 4
0
    def test_that_review_usernames_are_clickable(self, mozwebqa):
        """
        Litmus 4842
        https://litmus.mozilla.org/show_test.cgi?id=4842
        """
        addon_name = 'firebug'
        amo_detail_page = AddonsDetailsPage(mozwebqa, addon_name)

        for review in amo_detail_page.reviews():
            username = review.username
            amo_user_page = review.click_username()
            Assert.equal(username, amo_user_page.username)
            AddonsDetailsPage(mozwebqa, addon_name)
Exemplo n.º 5
0
    def test_navigating_to_other_addons(self, mozwebqa):
        """
        Litmus 11926
        https://litmus.mozilla.org/show_test.cgi?id=11926"""
        addon_name = 'firebug'
        amo_detail_page = AddonsDetailsPage(mozwebqa, addon_name)

        addons = amo_detail_page.other_addons()
        for addon in addons:
            name = addon.name
            addon.click_addon_link()
            Assert.contains(name, amo_detail_page.name)
            amo_detail_page = AddonsDetailsPage(mozwebqa, addon_name)
Exemplo n.º 6
0
    def test_that_add_a_review_button_works(self, mozwebqa):
        """
        Litmus 25729
        https://litmus.mozilla.org/show_test.cgi?searchType=by_id&id=25729
        """
        #Step 1: Addons Home Page loads and Addons Details loads
        amo_home_page = AddonsHomePage(mozwebqa)

        #Step 2:user logs in to submit a review
        amo_home_page.login()
        Assert.true(amo_home_page.header.is_user_logged_in)

        #Step 3: user loads an addon details page and clicks write a review button
        amo_details_page = AddonsDetailsPage(mozwebqa, 'Firebug')
        addon_review_box = amo_details_page.click_to_write_review()
        Assert.true(addon_review_box.is_review_box_visible)
Exemplo n.º 7
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
        amo_details_page = AddonsDetailsPage(mozwebqa, 'Adblock Plus')
        Assert.true(amo_details_page.has_reviews)

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

        #Go to the last page and check that the next button is not present
        amo_details_page.go_to_last_page()
        Assert.true(amo_details_page.is_next_link_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 = amo_details_page.current_page
        amo_details_page.page_back()
        Assert.true(amo_details_page.is_next_link_visible)
        Assert.equal(amo_details_page.review_count, 20)
        Assert.equal(amo_details_page.current_page, page_number - 1)

        #Go to the first page and check that the prev button is not present
        amo_details_page.go_to_first_page()
        Assert.true(amo_details_page.is_prev_link_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 = amo_details_page.current_page
        amo_details_page.page_forward()
        Assert.true(amo_details_page.is_prev_link_visible)
        Assert.equal(amo_details_page.review_count, 20)
        Assert.equal(amo_details_page.current_page, page_number + 1)
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"""
     amo_details_page = AddonsDetailsPage(mozwebqa, "Firebug")
     user_faq_page = amo_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))