Esempio n. 1
0
async def test_should_return_the_same_file_chooser_when_there_are_many_watchdogs_simultaneously(
        page: Page, server):
    await page.setContent("<input type=file>")
    results = await asyncio.gather(
        page.waitForEvent("filechooser"),
        page.waitForEvent("filechooser"),
        page.evalOnSelector("input", "input => input.click()"),
    )
    assert results[0] == results[1]
Esempio n. 2
0
async def test_should_be_able_to_reset_selected_files_with_empty_file_list(
    page: Page, server
):
    await page.setContent("<input type=file>")
    page.once(
        "filechooser",
        lambda file_chooser: asyncio.create_task(file_chooser.setFiles(FILE_TO_UPLOAD)),
    )
    file_length_1 = (
        await asyncio.gather(
            page.waitForEvent("filechooser"),
            page.evalOnSelector(
                "input",
                """async picker => {
                    picker.click();
                    await new Promise(x => picker.oninput = x);
                    return picker.files.length;
                }""",
            ),
        )
    )[1]
    assert file_length_1 == 1

    page.once(
        "filechooser",
        lambda file_chooser: asyncio.create_task(file_chooser.setFiles([])),
    )
    file_length_2 = (
        await asyncio.gather(
            page.waitForEvent("filechooser"),
            page.evalOnSelector(
                "input",
                """async picker => {
                    picker.click()
                    await new Promise(x => picker.oninput = x)
                    return picker.files.length
                }""",
            ),
        )
    )[1]
    assert file_length_2 == 0