from playwright.sync_api import Page, expect def test_editor_stress(authenticated_page: Page): """Stress test the core editor engine with deterministic text injection.""" editor = authenticated_page.locator("#editor-container") editor.wait_for(state="visible") editor.click() # Reset contents editor.focus() editor.evaluate("el => { el.innerHTML = ''; el.dispatchEvent(new Event('input', {bubbles: true})); }") text_to_type = "هذا نص تجريبي لاختبار أداء المحرر واستقراره أثناء الكتابة. " # 5 iterations of bounded deterministic text insertion for _ in range(5): editor.press_sequentially(text_to_type) # Yield to let sync handlers run authenticated_page.wait_for_timeout(100) editor.focus() # Ensure focus is not lost by sync rendering # Validate final content content = editor.inner_text() expected_content = (text_to_type * 5).strip() assert expected_content in content.replace("\n", ""), "Editor text loss detected due to contenteditable flake"