⏱️ Duration: 30.00s
❌ Error:
self = <tests.test_web_general.TestWebPhase1 object at 0x7f3f4d31f340>
login_page = <pages.login_page.LoginPage object at 0x7f3f4d350a00>
my_account_page = <pages.my_account_page.MyAccountPage object at 0x7f3f4d3033a0>
base_url = 'https://test03.testingpromo.com'
def test_w22_verify_password_changes(
self, login_page, my_account_page, base_url
):
"""
W22 Verify password changes
Uses a dedicated account (email_pass_change) to avoid disrupting main
test accounts. Flow:
1. Login → change password to random_password
2. Sign out → login with random_password (should succeed)
3. Change password back to original
4. Sign out → try to login with random_password (should fail)
"""
original_password = get_password()
page = login_page.page
# Step 1: Change password to random_password
> login_page.login_directly(base_url, email_pass_change, original_password)
tests/test_web_general.py:154:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/login_page.py:107: in login_directly
self.go_to_login_page(base_url)
pages/login_page.py:43: in go_to_login_page
self.page.goto(f"{base_url}/login", wait_until="domcontentloaded")
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:9875: in goto
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_page.py:560: in goto
return await self._main_frame.goto(**locals_to_params(locals()))
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_frame.py:156: in goto
await self._channel.send(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_connection.py:76: in send
return await self._connection.wrap_api_call(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <playwright._impl._connection.Connection object at 0x7f3f4d31d600>
cb = <function Channel.send.<locals>.<lambda> at 0x7
📸 Failure Screenshot:
⏱️ Duration: 60.18s
❌ Error:
self = <tests.test_web_general.TestWebPhase1 object at 0x7f3f4d31e7d0>
login_page = <pages.login_page.LoginPage object at 0x7f3f4d323220>
main_page = <pages.main_page.MainPage object at 0x7f3f46da77c0>
pricing_page = <pages.pricing_page.PricingPage object at 0x7f3f46da7700>
base_url = 'https://test03.testingpromo.com'
def test_w27_verify_header_for_logged_and_not_logged(
self, login_page, main_page, pricing_page, base_url
):
"""
W27 Verify header for logged and not logged
Pricing and PromoAI nav links should appear for guests and disappear
once the user is authenticated.
"""
page = login_page.page
# Unauthenticated: links should be present
main_page.go_to_homepage(base_url)
login_page.skip_cookies()
main_page.verify_header_links_visible()
page.goto(f"{base_url}/pricing")
page.wait_for_load_state("domcontentloaded")
main_page.verify_header_links_visible()
# Log in
login_page.login_directly(base_url, general_mail(), get_password())
# Authenticated: links should be gone
page.goto(f"{base_url}/create")
page.wait_for_load_state("domcontentloaded")
main_page.verify_header_links_not_visible()
> page.goto(f"{base_url}/templates")
tests/test_web_general.py:235:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:9875: in goto
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_page.py:560: in goto
return await self._main_frame.goto(**locals_to_params(locals()))
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_frame.py:156: in goto
await self._channel.send(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_connection.py:76: in send
return await self._connection.wrap_api_call(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _