Skip to content

Commit 9dbc891

Browse files
committed
test: make urltestdata_encoding throw error
1 parent 0b328d8 commit 9dbc891

File tree

1 file changed

+34
-50
lines changed

1 file changed

+34
-50
lines changed

tests/wpt_tests.cpp

Lines changed: 34 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -495,70 +495,54 @@ bool urltestdata_encoding(const char *source) {
495495
if constexpr (std::is_same<ada::url_aggregator, result_type>::value) {
496496
std::cout << "\n====\n" + input_url->to_diagram() + "\n====\n";
497497
}
498-
std::string_view protocol;
499-
if (!object["protocol"].get_string().get(protocol)) {
500-
TEST_ASSERT(input_url->get_protocol(), protocol,
501-
"Protocol " + element_string + input_url->to_string());
502-
}
498+
std::string_view protocol = object["protocol"].get_string().value();
499+
TEST_ASSERT(input_url->get_protocol(), protocol,
500+
"Protocol " + element_string + input_url->to_string());
503501

504-
std::string_view username;
505-
if (!object["username"].get_string().get(username)) {
506-
TEST_ASSERT(input_url->get_username(), username,
507-
"Username " + element_string + input_url->to_string());
508-
}
502+
std::string_view username = object["username"].get_string().value();
503+
TEST_ASSERT(input_url->get_username(), username,
504+
"Username " + element_string + input_url->to_string());
509505

510-
std::string_view password;
511-
if (!object["password"].get_string().get(password)) {
512-
TEST_ASSERT(input_url->get_password(), password,
513-
"Password " + element_string + input_url->to_string());
514-
}
506+
std::string_view password = object["password"].get_string().value();
507+
TEST_ASSERT(input_url->get_password(), password,
508+
"Password " + element_string + input_url->to_string());
515509

516-
std::string_view host;
517-
if (!object["host"].get_string().get(host)) {
518-
TEST_ASSERT(input_url->get_host(), host,
519-
"Hostname " + element_string + input_url->to_string());
520-
}
510+
std::string_view host = object["host"].get_string().value();
511+
TEST_ASSERT(input_url->get_host(), host,
512+
"Host " + element_string + input_url->to_string());
521513

522-
std::string_view hostname;
523-
if (!object["hostname"].get_string().get(hostname)) {
524-
TEST_ASSERT(input_url->get_hostname(), hostname,
525-
"Hostname " + element_string + input_url->to_string());
526-
}
514+
std::string_view hostname = object["hostname"].get_string().value();
515+
TEST_ASSERT(input_url->get_hostname(), hostname,
516+
"Hostname " + element_string + input_url->to_string());
527517

528-
std::string_view port;
529-
if (!object["port"].get_string().get(port)) {
530-
TEST_ASSERT(input_url->get_port(), port, "Port " + element_string);
531-
}
518+
std::string_view port = object["port"].get_string().value();
519+
TEST_ASSERT(input_url->get_port(), port, "Port " + element_string);
532520

533-
std::string_view pathname{};
534-
if (!object["pathname"].get_string().get(pathname)) {
535-
TEST_ASSERT(input_url->get_pathname(), pathname,
536-
"Pathname " + element_string + input_url->to_string());
537-
}
538-
std::string_view query;
539-
if (!object["query"].get(query)) {
540-
TEST_ASSERT(input_url->get_search(), query,
541-
"Query " + element_string + input_url->to_string());
542-
}
521+
std::string_view pathname = object["pathname"].get_string().value();
522+
TEST_ASSERT(input_url->get_pathname(), pathname,
523+
"Pathname " + element_string + input_url->to_string());
543524

544-
std::string_view hash;
545-
if (!object["hash"].get_string().get(hash)) {
546-
TEST_ASSERT(
547-
input_url->get_hash(), hash,
548-
"Hash/Fragment " + element_string + input_url->to_string());
549-
}
525+
std::string_view search = object["search"].get_string().value();
526+
TEST_ASSERT(input_url->get_search(), search,
527+
"Search " + element_string + input_url->to_string());
550528

551-
std::string_view href;
552-
if (!object["href"].get_string().get(href)) {
553-
TEST_ASSERT(input_url->get_href(), href,
554-
"href " + element_string + input_url->to_string());
555-
}
529+
std::string_view hash = object["hash"].get_string().value();
530+
TEST_ASSERT(
531+
input_url->get_hash(), hash,
532+
"Hash/Fragment " + element_string + input_url->to_string());
533+
534+
std::string_view href = object["href"].get_string().value();
535+
TEST_ASSERT(input_url->get_href(), href,
536+
"href " + element_string + input_url->to_string());
556537

538+
// The origin key may be missing. In that case, the API’s origin
539+
// attribute is not tested.
557540
std::string_view origin;
558541
if (!object["origin"].get(origin)) {
559542
TEST_ASSERT(input_url->get_origin(), origin,
560543
"Origin " + element_string + input_url->to_string());
561544
}
545+
562546
// We need padding.
563547
simdjson::padded_string padded_url_json = parsed_url_json;
564548
// We need a second parser.

0 commit comments

Comments
 (0)