Bug 1886957 - [wdspec] Add test to check network events for URL with fragment r=webdriver-reviewers,Sasha

Differential Revision: https://phabricator.services.mozilla.com/D205448
This commit is contained in:
Julian Descottes 2024-03-25 18:05:10 +00:00
parent fb794b8b2f
commit 1ba23a7902
3 changed files with 73 additions and 0 deletions

View file

@ -393,3 +393,26 @@ async def test_redirect_navigation(
# Check that both requests share the same requestId
assert events[0]["request"]["request"] == events[1]["request"]["request"]
@pytest.mark.asyncio
async def test_url_with_fragment(
url, wait_for_event, wait_for_future_safe, fetch, setup_network_test
):
fragment_url = url(f"{PAGE_EMPTY_HTML}#foo")
network_events = await setup_network_test(events=[BEFORE_REQUEST_SENT_EVENT])
events = network_events[BEFORE_REQUEST_SENT_EVENT]
on_before_request_sent = wait_for_event(BEFORE_REQUEST_SENT_EVENT)
await fetch(fragment_url, method="GET")
await wait_for_future_safe(on_before_request_sent)
assert len(events) == 1
# Assert that the event contains the full fragment URL in requestData.
assert_before_request_sent_event(
events[0],
expected_request={"method": "GET", "url": fragment_url},
redirect_count=0,
)

View file

@ -368,3 +368,28 @@ async def test_redirect_document(
# Check that the last 2 requests share the same request id
assert events[1]["request"]["request"] == events[2]["request"]["request"]
@pytest.mark.asyncio
async def test_url_with_fragment(
url, wait_for_event, wait_for_future_safe, fetch, setup_network_test
):
fragment_url = url(f"{PAGE_EMPTY_HTML}#foo")
network_events = await setup_network_test(events=[RESPONSE_COMPLETED_EVENT])
events = network_events[RESPONSE_COMPLETED_EVENT]
on_response_completed = wait_for_event(RESPONSE_COMPLETED_EVENT)
await fetch(fragment_url, method="GET")
await wait_for_future_safe(on_response_completed)
assert len(events) == 1
# Assert that the event contains the full fragment URL both in requestData
# and responseData
assert_response_event(
events[0],
expected_request={"method": "GET", "url": fragment_url},
expected_response={"url": fragment_url},
redirect_count=0,
)

View file

@ -311,3 +311,28 @@ async def test_redirect(bidi_session, url, fetch, setup_network_test):
# Check that both requests share the same requestId
assert events[0]["request"]["request"] == events[1]["request"]["request"]
@pytest.mark.asyncio
async def test_url_with_fragment(
url, wait_for_event, wait_for_future_safe, fetch, setup_network_test
):
fragment_url = url(f"{PAGE_EMPTY_HTML}#foo")
network_events = await setup_network_test(events=[RESPONSE_STARTED_EVENT])
events = network_events[RESPONSE_STARTED_EVENT]
on_response_started = wait_for_event(RESPONSE_STARTED_EVENT)
await fetch(fragment_url, method="GET")
await wait_for_future_safe(on_response_started)
assert len(events) == 1
# Assert that the event contains the full fragment URL both in requestData
# and responseData
assert_response_event(
events[0],
expected_request={"method": "GET", "url": fragment_url},
expected_response={"url": fragment_url},
redirect_count=0,
)