mirror of
https://github.com/RGBCube/serenity
synced 2025-07-23 18:17:41 +00:00
LibWeb+Tests: Demonstrate slowness of CSS::value_id_from_string
This commit is contained in:
parent
0687a75eaa
commit
b3d2fdceb1
2 changed files with 28 additions and 0 deletions
|
@ -1,4 +1,5 @@
|
||||||
set(TEST_SOURCES
|
set(TEST_SOURCES
|
||||||
|
TestCSSIDSpeed.cpp
|
||||||
TestHTMLTokenizer.cpp
|
TestHTMLTokenizer.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
27
Tests/LibWeb/TestCSSIDSpeed.cpp
Normal file
27
Tests/LibWeb/TestCSSIDSpeed.cpp
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2023, Ben Wiederhake <BenWiederhake.GitHub@gmx.de>
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: BSD-2-Clause
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <LibTest/TestCase.h>
|
||||||
|
|
||||||
|
#include <LibWeb/CSS/ValueID.h>
|
||||||
|
|
||||||
|
TEST_CASE(basic)
|
||||||
|
{
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("italic"sv), Web::CSS::ValueID::Italic);
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("inline"sv), Web::CSS::ValueID::Inline);
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("small"sv), Web::CSS::ValueID::Small);
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("smalL"sv), Web::CSS::ValueID::Small);
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("SMALL"sv), Web::CSS::ValueID::Small);
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("Small"sv), Web::CSS::ValueID::Small);
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("smALl"sv), Web::CSS::ValueID::Small);
|
||||||
|
}
|
||||||
|
|
||||||
|
BENCHMARK_CASE(value_id_from_string)
|
||||||
|
{
|
||||||
|
for (size_t i = 0; i < 10'000'000; ++i) {
|
||||||
|
EXPECT_EQ(Web::CSS::value_id_from_string("inline"sv), Web::CSS::ValueID::Inline);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue