Beispiel #1
0
def test_sign_up_empty_pp_checkbox(app):
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                           username="******" + str(random),
                           password="******",
                           captcha="1111",
                           promo_code=""))
    # Turn off PP check box
    app.driver.find_element_by_xpath(
        "//div[@id='registration']//div[@class='modala__agreement_wrapper']//span[@class='checkbox__box']"
    ).click()
    # Error message for PP captcha
    with pytest.allure.step("Error message for PP captcha"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//div[6]//span[@class='modala__error']"
        ) == "Поле обязательно для заполнения"
    # Border for PP check box field
    with pytest.allure.step("Border for PP checkbox"):
        assert app.warning.get_border_color(
            "//*[@id='registration']//div[6]/div") == "rgba(187, 37, 37, 1)"
Beispiel #2
0
def test_sign_up_with_promo(app):
    random = randrange(1000000000)
    with pytest.allure.step("Log out if user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            with pytest.allure.step(
                    "Signup with password only special symbols"):
                app.registration.sign_up_happy_pass(
                    SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                               username="******" + str(random),
                               password="******",
                               promo_code="testdd",
                               captcha="1111"))
        with pytest.allure.step("Assert for text about email"):
            assert app.warning.get_outer_text(
                app.selectors.event_message
            ) == app.text.registration_event_message_ru
        with pytest.allure.step(
                "Enter to admin and click to registration link"):
            app.admin.registration_with_approve()
        with pytest.allure.step("Assert that user is approved "):
            assert app.warning.get_outer_text(
                app.selectors.event_message
            ) == app.text.approve_registration_message_ru
        with pytest.allure.step("Assert that verify pop-up is opened"):
            assert app.warning.get_outer_text(
                app.selectors.h4_promo_pop_up) == app.text.h4_promo_title_ru
            assert app.warning.get_outer_text(
                app.selectors.text_promo_pop_up) == app.text.text_promo_pop_up
Beispiel #3
0
def test_sign_up_empty(app):
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="",
                           username="",
                           password="",
                           captcha="",
                           promo_code=""))
    with pytest.allure.step("Turn off PP captcha"):
        app.driver.find_element_by_xpath(
            "//div[@id='registration']//div[@class='modala__agreement_wrapper']//span[@class='checkbox__box']"
        ).click()
        time.sleep(0.5)
    with pytest.allure.step("Check empty email field error"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//span[@class='modala__error' and @data-validation-field = 'email'][1]"
        ) == "Поле обязательно для заполнения"
    with pytest.allure.step("Check empty nickname field error"):
        assert app.warning.get_outer_text(
            "//form[@action='/profile/create/']/div[2]/span[3]"
        ) == "Поле обязательно для заполнения"
    with pytest.allure.step("Check empty password field error"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//span[@class='modala__error' and @data-validation-field = 'password'][1]"
        ) == "Поле обязательно для заполнения"
    with pytest.allure.step("Error message for PP captcha"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//div[6]//span[@class='modala__error']"
        ) == "Поле обязательно для заполнения"
    with pytest.allure.step("Error message for captcha field"):
        assert app.warning.get_outer_text(
            "//div[@class='modala-captcha__wrapper']/span[1]"
        ) == "Поле обязательно для заполнения"
    with pytest.allure.step("Border for email field"):
        assert app.warning.get_border_color(
            "//input[@name='email']") == "rgba(187, 37, 37, 1)"
    with pytest.allure.step("Border for nickname field"):
        assert app.warning.get_border_color(
            "//input[@name='nick']") == "rgba(187, 37, 37, 1)"
    with pytest.allure.step("Border for password field"):
        assert app.warning.get_border_color(
            "//div[@id='registration']//input[@name='password'][2]"
        ) == "rgba(187, 37, 37, 1)"
    with pytest.allure.step("Border for PP check box field"):
        assert app.warning.get_border_color(
            "//*[@id='registration']//div[6]/div") == "rgba(187, 37, 37, 1)"
    with pytest.allure.step("Border for captcha field"):
        assert app.warning.get_border_color(
            "//div[@id='registration']//input[@name='captcha']"
        ) == "rgba(187, 37, 37, 1)"
Beispiel #4
0
def test_sign_up_password_number(app):
    random = randrange(1000000000)
    with pytest.allure.step("Log out if user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            with pytest.allure.step("Signup with password only number"):
                app.registration.sign_up_happy_pass(
                    SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                               username="******" + str(random),
                               password="******",
                               captcha="1111",
                               promo_code=""))
    with pytest.allure.step("Assert for text about email"):
        assert app.warning.get_outer_text(
            app.selectors.event_message
        ) == app.text.registration_event_message_ru
Beispiel #5
0
def test_signup_exist_nick(app):
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                           username="******",
                           password="******",
                           captcha="1111",
                           promo_code=""))
    # Error message for NickName field
    with pytest.allure.step("Error with exist nickname for nickname field"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//span[@class='modala__error' and @data-validation-field = 'login'][4]"
        ) == "Этот логин уже занят"
    # Border for nickname field
    with pytest.allure.step("Border for nickname field"):
        assert app.warning.get_border_color(
            "//input[@name='nick']") == "rgba(187, 37, 37, 1)"
Beispiel #6
0
def test_sign_up_captcha(app):
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                           username="******" + str(random),
                           password="******",
                           captcha="",
                           promo_code=""))
    # Error message for captcha field
    with pytest.allure.step("Check empty captcha field error"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//div[@class='modala-captcha__wrapper']/span[1]"
        ) == "Поле обязательно для заполнения"
    # Border for captcha field
    with pytest.allure.step("Border for captcha field"):
        assert app.warning.get_border_color(
            "//div[@id='registration']//input[@name='captcha']"
        ) == "rgba(187, 37, 37, 1)"
Beispiel #7
0
def test_signup_with_exist_email(app):
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="*****@*****.**",
                           username="******" + str(random),
                           password="******",
                           captcha="1111",
                           promo_code=""))
            time.sleep(0.1)
    # Error message for email field
    with pytest.allure.step("Error for exist email near email field"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//span[@class='modala__error' and @data-validation-field = 'email'][3]"
        ) == "Этот email уже зарегистрирован"
    # Border for email field
    with pytest.allure.step("Border for email field"):
        assert app.warning.get_border_color(
            "//input[@name='email']") == "rgba(187, 37, 37, 1)"
Beispiel #8
0
def test_sign_up_nick_with_special(app):
    random = randrange(1000000000)
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                           username="******" + str(random),
                           password="******",
                           captcha="1111",
                           promo_code=""))
    # Error message for NickName field
    with pytest.allure.step(
            "Error with incorrect nickname for nickname field"):
        assert app.warning.get_outer_text(
            "//div[@id='registration']//span[@class='modala__error' and @data-validation-field = 'login'][3]"
        ) == "Разрешены только a-z, 0-9 и _ символы"
    # Border for nickname field
    with pytest.allure.step("Border for nickname field"):
        assert app.warning.get_border_color(
            "//input[@name='nick']") == "rgba(187, 37, 37, 1)"
Beispiel #9
0
def test_sign_up_password_wrong_captcha(app):
    random = randrange(1000000000)
    with pytest.allure.step("If user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            app.registration.sign_up(
                SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                           username="******" + str(random),
                           password="******",
                           captcha="1234",
                           promo_code=""))
    # Error message for captcha field
    with pytest.allure.step("Error with wrong captcha for captcha field"):
        assert app.warning.get_outer_text(
            "//div[@class='modala-captcha__wrapper']/span[2]"
        ) == "Введено неверное значение"
    # Border for captcha field
    with pytest.allure.step("Border for captcha field"):
        assert app.warning.get_border_color(
            "//div[@id='registration']//input[@name='captcha']"
        ) == "rgba(187, 37, 37, 1)"
Beispiel #10
0
def test_registration_with_approve(app):
    random = randrange(1000000000)
    with pytest.allure.step("Log out if user is logged"):
        if app.session.user_logged():
            app.open_main_page_ru()
            app.session.logout()
        else:
            with pytest.allure.step("Fill in form by valid data"):
                app.registration.sign_up_happy_pass(
                    SignupCred(email="testpm8+" + str(random) + "@gmail.com",
                               username="******" + str(random),
                               password="******",
                               captcha="1111",
                               promo_code=""))
    with pytest.allure.step("Assert for text about email"):
        assert app.warning.get_outer_text(
            app.selectors.event_message
        ) == app.text.registration_event_message_ru
    with pytest.allure.step("Enter to admin and click to registration link"):
        app.admin.registration_with_approve()
    with pytest.allure.step("Assert that user is approved "):
        assert app.warning.get_outer_text(
            app.selectors.event_message
        ) == app.text.approve_registration_message_ru