mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 07:38:10 +00:00
headless-browser: Clear document and callbacks between tests
While it would be more hygienic to get a fresh Navigable each time, loading `about:blank` still means we discard the current Document. This does noticeably increase the duration of running the LibWeb test suite. On my machine, we go from ~5.5 seconds to ~7.7.
This commit is contained in:
parent
1e6cd19b28
commit
ac63d1e59d
1 changed files with 11 additions and 0 deletions
|
@ -25,6 +25,7 @@
|
||||||
#include <LibCore/Directory.h>
|
#include <LibCore/Directory.h>
|
||||||
#include <LibCore/EventLoop.h>
|
#include <LibCore/EventLoop.h>
|
||||||
#include <LibCore/File.h>
|
#include <LibCore/File.h>
|
||||||
|
#include <LibCore/Promise.h>
|
||||||
#include <LibCore/ResourceImplementationFile.h>
|
#include <LibCore/ResourceImplementationFile.h>
|
||||||
#include <LibCore/Timer.h>
|
#include <LibCore/Timer.h>
|
||||||
#include <LibDiff/Format.h>
|
#include <LibDiff/Format.h>
|
||||||
|
@ -352,6 +353,16 @@ static ErrorOr<TestResult> run_ref_test(HeadlessWebContentView& view, StringView
|
||||||
|
|
||||||
static ErrorOr<TestResult> run_test(HeadlessWebContentView& view, StringView input_path, StringView expectation_path, TestMode mode, bool dump_failed_ref_tests)
|
static ErrorOr<TestResult> run_test(HeadlessWebContentView& view, StringView input_path, StringView expectation_path, TestMode mode, bool dump_failed_ref_tests)
|
||||||
{
|
{
|
||||||
|
// Clear the current document.
|
||||||
|
// FIXME: Implement a debug-request to do this more thoroughly.
|
||||||
|
auto promise = Core::Promise<Empty>::construct();
|
||||||
|
view.on_load_finish = [&](auto) {
|
||||||
|
promise->resolve({});
|
||||||
|
};
|
||||||
|
view.on_text_test_finish = {};
|
||||||
|
view.load(URL("about:blank"sv));
|
||||||
|
MUST(promise->await());
|
||||||
|
|
||||||
s_current_test_path = input_path;
|
s_current_test_path = input_path;
|
||||||
switch (mode) {
|
switch (mode) {
|
||||||
case TestMode::Text:
|
case TestMode::Text:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue