⏱️ Duration: 47.38s
❌ Error:
self = <tests.test_chat_based_editor.TestChatBasedEditor object at 0x7fd94b480a00>
login_page = <pages.login_page.LoginPage object at 0x7fd94a702230>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fd94a5e8cd0>
base_url = 'https://promo.com', ratio = 'wide'
@pytest.mark.parametrize("ratio", ["wide", "vertical"])
def test_cbe02_cbe_should_work_in_all_ratios(
self, login_page, autopilot_page, base_url, ratio
):
"""
CBE02 CBE should work in all ratios
Login as AI user → open Planner → open 2nd post → change ratio
→ open CBE → send caption prompt → verify discard popup → save video.
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.ensure_ai_posts_exist(min_count=2)
autopilot_page.open_ai_post(2)
autopilot_page.change_video_ratio(ratio)
autopilot_page.open_cbe()
autopilot_page.send_cbe_prompt_and_wait(CBE_PROMPTS["caption"])
> autopilot_page.verify_cbe_discard_popup()
tests/test_chat_based_editor.py:107:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1566: in verify_cbe_discard_popup
self.verify_cbe_save_enabled()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pages.autopilot_page.AutopilotPage object at 0x7fd94a5e8cd0>
timeout = 30000
def verify_cbe_save_enabled(self, timeout: int = 30_000):
"""
Verifies the Save button is enabled (backend has applied the AI change).
Mirrors: verify_cbe_save_enabled(browser) retry loop
"""
from playwright.sync_api import expect
> expect(self.page.locator(self.AICHAT_SAVE_BUTTON)).to_be_enabled(timeout=timeout)
E AssertionError: Locator expected to be enabled
E Actual value: disabled
E Call log:
E - Expect "to_be_enabled" with timeout 300
📸 Failure Screenshot:
⏱️ Duration: 45.11s
❌ Error:
self = <tests.test_chat_based_editor.TestChatBasedEditor object at 0x7fd94b480820>
login_page = <pages.login_page.LoginPage object at 0x7fd94894d4e0>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fd94894e170>
base_url = 'https://promo.com', ratio = 'vertical'
@pytest.mark.parametrize("ratio", ["wide", "vertical"])
def test_cbe02_cbe_should_work_in_all_ratios(
self, login_page, autopilot_page, base_url, ratio
):
"""
CBE02 CBE should work in all ratios
Login as AI user → open Planner → open 2nd post → change ratio
→ open CBE → send caption prompt → verify discard popup → save video.
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.ensure_ai_posts_exist(min_count=2)
autopilot_page.open_ai_post(2)
autopilot_page.change_video_ratio(ratio)
autopilot_page.open_cbe()
autopilot_page.send_cbe_prompt_and_wait(CBE_PROMPTS["caption"])
> autopilot_page.verify_cbe_discard_popup()
tests/test_chat_based_editor.py:107:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1566: in verify_cbe_discard_popup
self.verify_cbe_save_enabled()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pages.autopilot_page.AutopilotPage object at 0x7fd94894e170>
timeout = 30000
def verify_cbe_save_enabled(self, timeout: int = 30_000):
"""
Verifies the Save button is enabled (backend has applied the AI change).
Mirrors: verify_cbe_save_enabled(browser) retry loop
"""
from playwright.sync_api import expect
> expect(self.page.locator(self.AICHAT_SAVE_BUTTON)).to_be_enabled(timeout=timeout)
E AssertionError: Locator expected to be enabled
E Actual value: disabled
E Call log:
E - Expect "to_be_enabled" with timeout
📸 Failure Screenshot: