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_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)
def test_that_add_a_review_button_works(self, mozwebqa): #Step 1: Addons Home Page loads and Addons Details loads home_page = Home(mozwebqa) #Step 2:user logs in to submit a review home_page.login() Assert.true(home_page.header.is_user_logged_in) #Step 3: user loads an addon details page and clicks write a review button details_page = Details(mozwebqa, 'Firebug') review_box = details_page.click_to_write_review() Assert.true(review_box.is_review_box_visible)
def test_that_add_a_review_button_works(self, base_url, selenium, existing_user): # Step 1: Addons Home Page loads and Addons Details loads home_page = Home(base_url, selenium) # Step 2:user logs in to submit a review home_page.login(existing_user['email'], existing_user['password']) assert home_page.header.is_user_logged_in # Step 3: user loads an addon details page and clicks write a review button details_page = Details(base_url, selenium, 'Firebug') review_box = details_page.click_to_write_review() assert review_box.is_review_box_visible
def test_that_add_a_review_button_works(self, mozwebqa): """ Test for Litmus 25729. https://litmus.mozilla.org/show_test.cgi?searchType=by_id&id=25729 """ #Step 1: Addons Home Page loads and Addons Details loads home_page = Home(mozwebqa) #Step 2:user logs in to submit a review home_page.login() Assert.true(home_page.header.is_user_logged_in) #Step 3: user loads an addon details page and clicks write a review button details_page = Details(mozwebqa, 'Firebug') review_box = details_page.click_to_write_review() Assert.true(review_box.is_review_box_visible)
def test_that_new_review_is_saved(self, mozwebqa): # Step 1 - Login into AMO home_page = Home(mozwebqa) home_page.login() 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, '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.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 expected_date = date.replace(' 0', ' ') Assert.equal( review.date, expected_date, 'Date of review does not match the expected value. ' 'Expected: "%s" but found "%s"' % (expected_date, review.date)) Assert.equal( review.text, body, 'Review text does not match expected value. ' 'Expected: "%s", but found "%s"' % (body, review.text)) review.delete() details_page = Details(mozwebqa, 'Memchaser') review_page = details_page.click_all_reviews_link() for review in review_page.reviews: Assert.false(body in review.text)
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, '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.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) review.delete() details_page = Details(mozwebqa, 'Memchaser') review_page = details_page.click_all_reviews_link() for review in review_page.reviews: Assert.false(body in review.text)
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 1 == review.rating assert existing_user['name'] == review.author 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 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(mozwebqa, 'Memchaser') review_page = details_page.click_all_reviews_link() for review in review_page.reviews: assert body not in review.text
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