Exemplo n.º 1
0
def test_profile_page_should_display_profile_page_heading(
        responsive_target, login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    # check page title does exist
    assert profile_page.does_have_text_in_page('Profile Management')
Exemplo n.º 2
0
def test_profile_page_should_display_update_password_after_only_password_change_reques(
        responsive_target, login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    newPassword = fake.password()

    # enter random name
    # must be random name since this test is run multiple times
    profile_page.enter_text_in_element(newPassword,
                                       'user_password_input',
                                       clear=True)
    profile_page.enter_text_in_element(newPassword,
                                       'user_confirm_input',
                                       clear=True)

    profile_page.click_element('update_btn')

    profile_page.wait_for_text('updating user profile success')

    # check page title does exist
    assert profile_page.does_have_text_in_page('updating user profile success')

    # reset password to original one for the sake of continuous testing without rebuild docker
    profile_page.enter_text_in_element(cfg.test_user_password_for_profile,
                                       'user_password_input',
                                       clear=True)
    profile_page.enter_text_in_element(cfg.test_user_password_for_profile,
                                       'user_confirm_input',
                                       clear=True)

    profile_page.click_element('update_btn')

    profile_page.wait_for_text('updating user profile success')
Exemplo n.º 3
0
def test_profile_page_should_unchange_the_state_of_no_avatar_image(
        responsive_target, login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    # enter random name
    # must be random name since this test is run multiple times
    profile_page.enter_text_in_element(fake.name(),
                                       'user_name_input',
                                       clear=True)

    profile_page.click_element('update_btn')

    profile_page.wait_for_text('updating user profile success')

    # check page title does exist
    assert profile_page.does_have_text_in_page('updating user profile success')
    assert profile_page.get_attribute_of_element('user_avatar_image',
                                                 'src') is None

    profile_page.enter_text_in_element(cfg.test_user_name_for_profile,
                                       'user_name_input',
                                       clear=True)
    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')
Exemplo n.º 4
0
def test_profile_page_should_display_updated_name_after_only_name_change_request(
        responsive_target, login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    # enter random name
    # must be random name since this test is run multiple times
    profile_page.enter_text_in_element(fake.name(),
                                       'user_name_input',
                                       clear=True)

    profile_page.click_element('update_btn')

    profile_page.wait_for_text('updating user profile success')

    # check page title does exist
    assert profile_page.does_have_text_in_page('updating user profile success')
Exemplo n.º 5
0
def test_profile_page_should_display_all_updated_user_info_after_all_user_info_change_request_with_avatar_image(
        responsive_target, login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    newPassword = fake.password()

    # enter random name
    # must be random name since this test is run multiple times
    profile_page.enter_text_in_element(fake.name(),
                                       'user_name_input',
                                       clear=True)
    profile_page.enter_text_in_element(fake.email(),
                                       'user_email_input',
                                       clear=True)
    profile_page.enter_text_in_element(newPassword,
                                       'user_password_input',
                                       clear=True)
    profile_page.enter_text_in_element(newPassword,
                                       'user_confirm_input',
                                       clear=True)
    profile_page.enter_text_in_element(
        os.getcwd() + "/tests/data/test_image.jpg", 'user_avatar_image_input')

    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')

    # check page title does exist
    assert profile_page.does_have_text_in_page('updating user profile success')

    # reset password to original one for the sake of continuous testing without rebuild docker
    profile_page.enter_text_in_element(cfg.test_user_name_for_profile,
                                       'user_name_input',
                                       clear=True)
    profile_page.enter_text_in_element(cfg.test_user_email_for_profile,
                                       'user_email_input',
                                       clear=True)
    profile_page.enter_text_in_element(cfg.test_user_password_for_profile,
                                       'user_password_input',
                                       clear=True)
    profile_page.enter_text_in_element(cfg.test_user_password_for_profile,
                                       'user_confirm_input',
                                       clear=True)
    profile_page.click_element('avatar_image_delete_icon')
    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')
Exemplo n.º 6
0
def test_profile_page_should_delete_existing_avatar_imag(
        responsive_target, login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    # prepare existing avatar image
    profile_page.enter_text_in_element(
        os.getcwd() + "/tests/data/test_image.jpg", 'user_avatar_image_input')
    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')

    # clean up (delete image)
    profile_page.click_element('avatar_image_delete_icon')
    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')

    # check page title does exist
    assert profile_page.does_have_text_in_page('updating user profile success')
Exemplo n.º 7
0
def test_profile_page_should_create_avatar_image(responsive_target,
                                                 login_for_profile):

    profile_page = ProfilePage(responsive_target['driver'], independent=False)

    dummyImage = "test_image.jpg"

    # create image
    profile_page.enter_text_in_element(
        os.getcwd() + "/tests/data/" + dummyImage, 'user_avatar_image_input')
    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')

    # check page title does exist
    assert profile_page.does_have_text_in_page('updating user profile success')
    assert profile_page.get_attribute_of_element('user_avatar_image',
                                                 'src') is not None

    # clean up (delete image)
    profile_page.click_element('avatar_image_delete_icon')
    profile_page.click_element('update_btn')
    profile_page.wait_for_text('updating user profile success')