ladybird/Userland/Libraries/LibWeb/WebDriver
Timothy Flynn e5877cda61 WebDriver: Do not break WebDriver responses into multiple socket writes
WPT uses Python's http.client.HTTPConnection to send/receive WebDriver
messages. For some reason, on Linux, we see an ~0.04s delay between the
WPT server receiving the WebDriver response headers and its body. There
are tests which make north of 1100 of these requests, which adds up to
~44s.

These connections are almost always going to be over localhost and able
the be sent in a single write. So let's send the response all at once.

On my Linux machine, this reduces the runtime of /cookies/name/name.html
from 45-60s down to 3-4s.
2024-09-24 23:43:22 +01:00
..
Capabilities.cpp Everywhere: Convert from_string_view -> from_string_literal where static 2024-09-11 10:59:04 +01:00
Capabilities.h LibWeb+WebDriver: Support running headless WebDriver sessions 2022-11-24 00:10:56 +00:00
Client.cpp WebDriver: Do not break WebDriver responses into multiple socket writes 2024-09-24 23:43:22 +01:00
Client.h WebDriver: Add boilerplate for endpoint 15.7 Perform Actions 2024-09-09 14:11:23 +01:00
Contexts.cpp LibWeb+WebContent: Convert WebDriver to choose a navigable AO 2024-02-05 08:05:48 -07:00
Contexts.h LibWeb/WebDriver: Handle WindowProxy in internal_json_clone_algorithm() 2023-04-20 14:41:31 -04:00
ElementLocationStrategies.cpp LibWeb: Implement the element location strategies in Web::WebDriver 2022-11-10 13:10:16 +00:00
ElementLocationStrategies.h Everywhere: Remove unused includes of AK/Array.h 2023-01-02 20:08:35 +00:00
ElementReference.cpp LibWeb+WebContent: Partially implement the switch-to-frame endpoint 2024-09-15 00:56:21 +01:00
ElementReference.h LibWeb+WebContent: Partially implement the switch-to-frame endpoint 2024-09-15 00:56:21 +01:00
Error.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
Error.h Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
ExecuteScript.cpp LibWeb+WebContent: Implement the WebDriver JSON clone steps for elements 2024-09-15 00:56:21 +01:00
ExecuteScript.h LibWeb+WebContent: Implement the WebDriver JSON clone steps for elements 2024-09-15 00:56:21 +01:00
Response.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
Response.h LibWeb: Mark Web::WebDriver::Response as [[nodiscard]] 2023-03-07 18:16:35 +00:00
Screenshot.cpp LibWeb/WebDriver: Use correct dimensions for WPT reftest screenshots 2024-09-16 09:11:52 -04:00
Screenshot.h LibWeb: Implement screenshot painting inside Web::WebDriver 2022-11-11 11:36:07 +00:00
TimeoutsConfiguration.cpp WebDriver: Dont assume the pageLoad is an i64 2024-05-30 11:46:02 -04:00
TimeoutsConfiguration.h LibWeb+WebDriver: Move the timeouts configuration object to LibWeb 2022-11-11 22:03:23 +00:00