← Back to All Reports
PARTIALLY PASSED (86%)
Job Name
chat_based_editor_prod
Pipeline ID
Job ID
#4491363
Branch
master
Commit
N/A
Executed At
2026-11-08T01:14:45.387634
19
Passed
3
Failed
0
Skipped

Test Results (22 tests)

test_cbe01_cbe_service_chains_sanity[chromium-caption]
failed
⏱️ Duration: 110.82s
❌ Error:
self = <tests.test_chat_based_editor.TestChatBasedEditor object at 0x7fa458d09cc0> login_page = <pages.login_page.LoginPage object at 0x7fa458ce34f0> autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fa458ce3490> base_url = 'https://promo.com', prompt_key = 'caption' @pytest.mark.skip_smoke @pytest.mark.parametrize("prompt_key", [ "caption", "linebreak", "music", "outro_values", "remove_scene", "text_color", "text_font", "logo", "text_position", "translation", "add_scene", "change_watermark", ]) def test_cbe01_cbe_service_chains_sanity( self, login_page, autopilot_page, base_url, prompt_key ): """ CBE01 CBE service chains sanity Login as AI user → open Planner → ensure AI posts exist → open 1st non-voice-over AI post that offers CBE → open CBE → send prompt → verify AI response → verify save enabled → 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() tests/test_chat_based_editor.py:77: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pages/autopilot_page.py:457: in ensure_ai_posts_exist self.wait_for_posts_generated(timeout=360_000) pages/autopilot_page.py:545: in wait_for_posts_generated self.page.locator(self.PLANNER_AI_BADGE).first.wait_for( /usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for self._sync( /usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:748: in wait_for await self._frame.wait_for_selector( /usr/local/lib/python3.10/dist-packages/playwright/_impl/_frame.py:394: in wait_for_selector await self._channel.send( /usr/local/lib/python3.10/dist-packages/playwright/_impl/_connection.py:76: in se
📸 Failure Screenshot:
Test failure screenshot
test_cbe01_cbe_service_chains_sanity[chromium-linebreak]
failed
⏱️ Duration: 110.79s
❌ Error:
self = <tests.test_chat_based_editor.TestChatBasedEditor object at 0x7fa458d09bd0> login_page = <pages.login_page.LoginPage object at 0x7fa4525873d0> autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fa452587610> base_url = 'https://promo.com', prompt_key = 'linebreak' @pytest.mark.skip_smoke @pytest.mark.parametrize("prompt_key", [ "caption", "linebreak", "music", "outro_values", "remove_scene", "text_color", "text_font", "logo", "text_position", "translation", "add_scene", "change_watermark", ]) def test_cbe01_cbe_service_chains_sanity( self, login_page, autopilot_page, base_url, prompt_key ): """ CBE01 CBE service chains sanity Login as AI user → open Planner → ensure AI posts exist → open 1st non-voice-over AI post that offers CBE → open CBE → send prompt → verify AI response → verify save enabled → 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() tests/test_chat_based_editor.py:77: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pages/autopilot_page.py:457: in ensure_ai_posts_exist self.wait_for_posts_generated(timeout=360_000) pages/autopilot_page.py:545: in wait_for_posts_generated self.page.locator(self.PLANNER_AI_BADGE).first.wait_for( /usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for self._sync( /usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:748: in wait_for await self._frame.wait_for_selector( /usr/local/lib/python3.10/dist-packages/playwright/_impl/_frame.py:394: in wait_for_selector await self._channel.send( /usr/local/lib/python3.10/dist-packages/playwright/_impl/_connection.py:76: in
📸 Failure Screenshot:
Test failure screenshot
test_cbe01_cbe_service_chains_sanity[chromium-music]
passed
⏱️ Duration: 13.24s
test_cbe01_cbe_service_chains_sanity[chromium-outro_values]
passed
⏱️ Duration: 9.47s
test_cbe01_cbe_service_chains_sanity[chromium-remove_scene]
passed
⏱️ Duration: 11.44s
test_cbe01_cbe_service_chains_sanity[chromium-text_color]
passed
⏱️ Duration: 10.83s
test_cbe01_cbe_service_chains_sanity[chromium-text_font]
passed
⏱️ Duration: 10.88s
test_cbe01_cbe_service_chains_sanity[chromium-logo]
passed
⏱️ Duration: 10.18s
test_cbe01_cbe_service_chains_sanity[chromium-text_position]
passed
⏱️ Duration: 10.06s
test_cbe01_cbe_service_chains_sanity[chromium-translation]
passed
⏱️ Duration: 9.87s
test_cbe01_cbe_service_chains_sanity[chromium-add_scene]
passed
⏱️ Duration: 16.87s
test_cbe01_cbe_service_chains_sanity[chromium-change_watermark]
passed
⏱️ Duration: 9.66s
test_cbe02_cbe_should_work_in_all_ratios[chromium-wide]
passed
⏱️ Duration: 15.19s
test_cbe02_cbe_should_work_in_all_ratios[chromium-vertical]
passed
⏱️ Duration: 18.41s
test_cbe03_replace_a_clip[chromium-stock_video]
passed
⏱️ Duration: 14.09s
test_cbe03_replace_a_clip[chromium-stock_photo]
failed
⏱️ Duration: 26.96s
❌ Error:
self = <tests.test_chat_based_editor.TestChatBasedEditor object at 0x7fa458d08340> login_page = <pages.login_page.LoginPage object at 0x7fa451567d60> autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fa4515675b0> base_url = 'https://promo.com', prompt_key = 'stock_photo' @pytest.mark.skip_smoke @pytest.mark.parametrize("prompt_key", [ "stock_video", "stock_photo", "uploaded_video", "uploaded_photo", ]) def test_cbe03_replace_a_clip( self, login_page, autopilot_page, base_url, prompt_key ): """ CBE03 Replace a clip Login as AI user → open Planner → open the first AI post from #3 onward that still offers CBE → open CBE → send clip-replacement prompt → verify media library → select first clip → verify discard popup → save video. Starts scanning at post #3 rather than assuming it's free: `email_ai` is a shared/persistent prod account, and once a post is Rated its chat/regenerate controls disappear from the UI permanently (verified via DOM inspection) — a hardcoded index would fail deterministically the moment that specific post gets rated by any run. """ 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=3) autopilot_page.open_first_ai_post_with_cbe(start=3, skip_voice_over=True) autopilot_page.open_cbe() autopilot_page.send_cbe_prompt_and_wait(CBE_PROMPTS[prompt_key]) > autopilot_page.select_cbe_clip() tests/test_chat_based_editor.py:143: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pages/autopilot_page.py:1674: in select_cbe_clip self.page.locator(self.AICHAT_CHAT_SECTION).get_by_text( /usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for self._sync( /
📸 Failure Screenshot:
Test failure screenshot
test_cbe03_replace_a_clip[chromium-uploaded_video]
passed
⏱️ Duration: 13.64s
test_cbe03_replace_a_clip[chromium-uploaded_photo]
passed
⏱️ Duration: 13.34s
test_cbe04_upload_via_filestack_url[chromium-video]
passed
⏱️ Duration: 25.90s
test_cbe04_upload_via_filestack_url[chromium-photo]
passed
⏱️ Duration: 14.22s
test_cbe05_voice_changes_not_possible_for_non_narrated_videos[chromium]
passed
⏱️ Duration: 9.20s
test_cbe06_upload_via_filestack_facebook_page[chromium]
passed
⏱️ Duration: 24.29s