in issues/50577_1094/user_tool.py [0:0]
def test_inconsistent_button_behavior():
with sync_playwright() as p:
user_info = get_test_user_info(10)
delete_email_inbox(user_info["email"], user_info["password"], retries=6, delay=5)
browser = p.chromium.launch(channel="chrome", headless=True, slow_mo=500, args=[
"--disable-web-security",
"--disable-features=IsolateOrigins,site-per-process"
])
context, page = get_context(p, user_info, browser)
# Start tracing
context.tracing.start(screenshots=True, snapshots=True, sources=True)
try:
login_user(page, user_info)
page.get_by_label("Start chat (Floating action)").click()
page.get_by_label("Submit expense").nth(0).click()
page.get_by_label("Manual").click()
page.get_by_placeholder("0").fill("100")
page.locator("#numPadContainerView").get_by_role("button", name="Next").click()
page.get_by_test_id("selection-list").get_by_label("Nomandevtur+50577's Workspace").click()
page.get_by_role("menuitem", name="Merchant Required").click()
page.get_by_role("textbox", name="Merchant").fill("hello")
page.get_by_role("button", name="Save").click()
page1 = context.new_page()
page1.bring_to_front()
page1.goto(page.url)
page1.wait_for_load_state('load')
page.wait_for_timeout(5000)
page.bring_to_front()
page.get_by_role("button", name="Submit PKR").click()
page.wait_for_timeout(1000)
page1.bring_to_front()
page1.get_by_role("button", name="Submit PKR").click()
page.wait_for_timeout(1000)
text_locator = page1.get_by_text("Please select a participant.")
expect(text_locator).to_be_visible()
page.bring_to_front()
page.get_by_label("Create").click()
page.get_by_label("Assign task").click()
page.get_by_role("textbox", name="Title").fill("877")
page.get_by_role("button", name="Next").click()
page1.bring_to_front()
page1.goto(page.url)
page1.wait_for_load_state('load')
page.wait_for_timeout(5000)
page.bring_to_front()
page.get_by_role("button", name="Confirm task").click()
page.wait_for_timeout(1000)
page1.bring_to_front()
page1.get_by_role("button", name="Confirm task").click()
page.wait_for_timeout(1000)
text_locator = page1.get_by_text("Please enter a title and select a share destination.")
expect(text_locator).to_be_visible()
page.close()
finally:
trace_path = "/app/expensify/user_tool/output_browser1.zip"
context.tracing.stop(path=trace_path)
trace_cleaner(trace_path)
browser.close()