def test_images_are_visible(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_images = [] for image in contribute_page.images_list: if not contribute_page.is_element_visible(*image.get('locator')): bad_images.append('The image at %s is not visible' % image.get('locator')[1:]) Assert.equal(0, len(bad_images), '%s bad images found: ' % len(bad_images) + ', '.join(bad_images))
def test_major_link_destinations_are_correct(self, base_url, selenium): page = Contribute(base_url, selenium).open() bad_links = [] for link in page.major_links_list: url = page.link_destination(link.get('locator')) if not url.endswith(link.get('url_suffix')): bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) assert [] == bad_links
def test_tools_links_are_visible(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_links = [] for link in contribute_page.details_links: if not contribute_page.is_element_visible(*link.get('locator')): bad_links.append('The link at %s is not visible' % link.get('locator')[1:]) Assert.equal(0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_sign_up_form_fields_are_visible(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() signup_page = contribute_page.click_signup() bad_fields = [] for field in signup_page.sign_up_form_fields: if not signup_page.is_element_visible(*field.get('locator')): bad_fields.append('The field at %s is not visible' % field.get('locator')[1:]) Assert.equal(0, len(bad_fields), '%s bad fields found: ' % len(bad_fields) + ', '.join(bad_fields))
def test_image_srcs_are_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_images = [] for image in contribute_page.images_list: src = contribute_page.image_source(image.get('locator')) if not src.endswith(image.get('img_name_suffix')): bad_images.append('%s does not end with %s' % (src, image.get('img_name_suffix'))) Assert.equal(0, len(bad_images), '%s bad images found: ' % len(bad_images) + ', '.join(bad_images))
def test_tools_link_destinations_are_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_links = [] for link in contribute_page.details_links: url = contribute_page.link_destination(link.get('locator')) if not url.endswith(link.get('url_suffix')): bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) Assert.equal(0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_major_link_destinations_are_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_links = [] for link in contribute_page.major_links_list: url = contribute_page.link_destination(link.get('locator')) if not url.endswith(link.get('url_suffix')): bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) assert [] == bad_links
def test_major_link_urls_are_valid(self, base_url, selenium): page = Contribute(base_url, selenium).open() bad_urls = [] for link in page.major_links_list: url = page.link_destination(link.get('locator')) response_code = page.get_response_code(url) if response_code != requests.codes.ok: bad_urls.append('%s is not a valid url - status code: %s.' % (url, response_code)) assert [] == bad_urls
def test_footer_section(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() Assert.contains(contribute_page.footer.expected_footer_logo_destination, contribute_page.footer.footer_logo_destination) Assert.contains(contribute_page.footer.expected_footer_logo_img, contribute_page.footer.footer_logo_img) for link in Contribute.Footer.footer_links_list: Assert.contains(link.get('href'), contribute_page.footer.footer_link_destination(link.get('text')))
def test_images_srcs_are_valid(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_urls = [] for image in contribute_page.images_list: url = contribute_page.image_source(image.get('locator')) response_code = contribute_page.get_response_code(url) if response_code != requests.codes.ok: bad_urls.append('%s is not a valid url - status code: %s.' % (url, response_code)) Assert.equal(0, len(bad_urls), '%s bad urls found: ' % len(bad_urls) + ', '.join(bad_urls))
def test_tools_link_urls_are_valid(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_urls = [] for link in contribute_page.details_links: url = contribute_page.link_destination(link.get('locator')) response_code = contribute_page.get_response_code(url) if response_code != requests.codes.ok: bad_urls.append('%s is not a valid url - status code: %s.' % (url, response_code)) Assert.equal(0, len(bad_urls), '%s bad urls found: ' % len(bad_urls) + ', '.join(bad_urls))
def test_tools_links_are_visible(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_links = [] for link in contribute_page.details_links: if not contribute_page.is_element_visible(*link.get('locator')): bad_links.append('The link at %s is not visible' % link.get('locator')[1:]) Assert.equal( 0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_want_to_help_form_is_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() help_form = contribute_page.help_form # Expand the help form help_form.click_email() Assert.true(contribute_page.help_form.elements_are_visible) privacy_link = help_form.privacy_link url = contribute_page.link_destination(privacy_link.get('locator')) Assert.true(url.endswith(privacy_link.get('url_suffix')), '%s does not end with %s' % (url, privacy_link.get('url_suffix'))) Assert.true(contribute_page.is_valid_link(url), '%s is not a valid url.' % url)
def test_images_are_visible(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_images = [] for image in contribute_page.images_list: if not contribute_page.is_element_visible(*image.get('locator')): bad_images.append('The image at %s is not visible' % image.get('locator')[1:]) Assert.equal( 0, len(bad_images), '%s bad images found: ' % len(bad_images) + ', '.join(bad_images))
def test_tabzilla_links_are_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() Assert.true(contribute_page.header.is_tabzilla_panel_visible) contribute_page.header.toggle_tabzilla_dropdown() bad_links = [] for link in Contribute.Header.tabzilla_links_list: url = contribute_page.link_destination(link.get('locator')) if url.find(link.get('url_suffix')) < 1: bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) Assert.equal(0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_want_to_help_form_is_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() help_form = contribute_page.help_form # Expand the help form help_form.click_email() Assert.true(contribute_page.help_form.elements_are_visible) privacy_link = help_form.privacy_link url = contribute_page.link_destination(privacy_link.get('locator')) Assert.true(url.endswith(privacy_link.get('url_suffix')), '%s does not end with %s' % (url, privacy_link.get('url_suffix'))) response_code = contribute_page.get_response_code(url) Assert.equal(response_code, requests.codes.ok, '%s is not a valid url - status code: %s.' % (url, response_code))
def test_sign_up_form_fields_are_visible(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() signup_page = contribute_page.click_signup() bad_fields = [] for field in signup_page.sign_up_form_fields: if not signup_page.is_element_visible(*field.get('locator')): bad_fields.append('The field at %s is not visible' % field.get('locator')[1:]) Assert.equal( 0, len(bad_fields), '%s bad fields found: ' % len(bad_fields) + ', '.join(bad_fields))
def test_footer_section(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_links = [] for link in Contribute.Footer.footer_links_list: url = contribute_page.link_destination(link.get('locator')) if not url.endswith(link.get('url_suffix')): bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) Assert.equal( 0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_location_image_srcs_are_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_images = [] for image in contribute_page.locations_list: src = contribute_page.image_source(image.get('locator')) if not src.endswith(image.get('img_name_suffix')): bad_images.append('%s does not end with %s' % (src, image.get('img_name_suffix'))) Assert.equal( 0, len(bad_images), '%s bad images found: ' % len(bad_images) + ', '.join(bad_images))
def test_footer_section(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() Assert.contains(contribute_page.footer.expected_footer_logo_destination, contribute_page.footer.footer_logo_destination) Assert.contains(contribute_page.footer.expected_footer_logo_img, contribute_page.footer.footer_logo_img) bad_links = [] for link in Contribute.Footer.footer_links_list: url = contribute_page.link_destination(link.get('locator')) if not url.endswith(link.get('url_suffix')): bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) Assert.equal(0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_want_to_help_form_is_correct(self, mozwebqa): if mozwebqa.base_url == 'https://www.allizom.org': pytest.xfail(reason='Bug 793002 - reCaptcha key for staging is bad') contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() help_form = contribute_page.help_form # Expand the help form help_form.click_email() Assert.true(contribute_page.help_form.elements_are_visible) privacy_link = help_form.privacy_link url = contribute_page.link_destination(privacy_link.get('locator')) Assert.true(url.endswith(privacy_link.get('url_suffix')), '%s does not end with %s' % (url, privacy_link.get('url_suffix'))) response_code = contribute_page.get_response_code(url) Assert.equal(response_code, requests.codes.ok, '%s is not a valid url - status code: %s.' % (url, response_code))
def test_tabzilla_links_are_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() Assert.true(contribute_page.header.is_tabzilla_panel_visible) contribute_page.header.toggle_tabzilla_dropdown() bad_links = [] for link in Contribute.Header.tabzilla_links_list: url = contribute_page.link_destination(link.get('locator')) if url.find(link.get('url_suffix')) < 1: bad_links.append('%s does not end with %s' % (url, link.get('url_suffix'))) Assert.equal( 0, len(bad_links), '%s bad links found: ' % len(bad_links) + ', '.join(bad_links))
def test_sign_up_with_valid_email(self, mozwebqa): valid_email = '*****@*****.**' country = 'us' name = 'mozilla' success_url_slug = 'thankyou' contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() signup_page = contribute_page.click_signup() signup_page.click_testing_area() signup_page.select_option('testing-firefox', signup_page._sign_up_form_select_testing_area_locator) signup_page.input_name(name) signup_page.input_email(valid_email) signup_page.select_option(country, signup_page._sign_up_form_country_select_locator) signup_page.select_html_format() signup_page.check_privacy_checkbox() signup_page.submit_form() Assert.true(success_url_slug in signup_page.url_current_page, 'Expected current URL slug to be %s, but was not found in %s.' % (success_url_slug, signup_page.url_current_page))
def test_sign_up_with_valid_email(self, mozwebqa): valid_email = '*****@*****.**' country = 'us' name = 'mozilla' success_url_slug = 'thankyou' contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() signup_page = contribute_page.click_signup() signup_page.click_testing_area() signup_page.select_option( 'testing-firefox', signup_page._sign_up_form_select_testing_area_locator) signup_page.input_name(name) signup_page.input_email(valid_email) signup_page.select_option( country, signup_page._sign_up_form_country_select_locator) signup_page.select_html_format() signup_page.check_privacy_checkbox() signup_page.submit_form() Assert.true( success_url_slug in signup_page.url_current_page, 'Expected current URL slug to be %s, but was not found in %s.' % (success_url_slug, signup_page.url_current_page))
def test_major_link_urls_are_valid(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_urls = [] for link in contribute_page.major_links_list: url = contribute_page.link_destination(link.get('locator')) response_code = contribute_page.get_response_code(url) if response_code != requests.codes.ok: bad_urls.append('%s is not a valid url - status code: %s.' % (url, response_code)) assert [] == bad_urls
def test_tools_link_urls_are_valid(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() bad_urls = [] for link in contribute_page.details_links: url = contribute_page.link_destination(link.get('locator')) response_code = contribute_page.get_response_code(url) if response_code != requests.codes.ok: bad_urls.append('%s is not a valid url - status code: %s.' % (url, response_code)) Assert.equal( 0, len(bad_urls), '%s bad urls found: ' % len(bad_urls) + ', '.join(bad_urls))
def test_want_to_help_form_is_correct(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() help_form = contribute_page.help_form # Expand the help form help_form.click_email() Assert.true(contribute_page.help_form.elements_are_visible) privacy_link = help_form.privacy_link url = contribute_page.link_destination(privacy_link.get('locator')) Assert.true( url.endswith(privacy_link.get('url_suffix')), '%s does not end with %s' % (url, privacy_link.get('url_suffix'))) response_code = contribute_page.get_response_code(url) Assert.equal( response_code, requests.codes.ok, '%s is not a valid url - status code: %s.' % (url, response_code))
def test_footer_section(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() Assert.true(contribute_page.footer.are_footer_links_visible)
def test_header_section(self, mozwebqa): contribute_page = Contribute(mozwebqa) contribute_page.go_to_page() Assert.true(contribute_page.header.is_tabzilla_panel_visible) contribute_page.header.toggle_tabzilla_dropdown() Assert.true(contribute_page.header.are_tabzilla_links_visible)