⏱️ Duration: 46.20s
❌ Error:
self = <tests.test_chat_based_editor.TestChatBasedEditor object at 0x7f80b73b1870>
login_page = <pages.login_page.LoginPage object at 0x7f80b7395270>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f80b73977f0>
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 the first AI post from #2
onward that isn't a voice-over 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_first_ai_post_with_cbe(start=2, skip_voice_over=True)
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:108:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1589: in verify_cbe_discard_popup
self.verify_cbe_save_enabled()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pages.autopilot_page.AutopilotPage object at 0x7f80b73977f0>
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 enabl
📸 Failure Screenshot: