Tests: Use pointers in TestHTMLTokenizer to avoid copying HTMLTokens

This commit is contained in:
Max Wipfli 2021-07-15 22:23:06 +02:00 committed by Ali Mohammad Pur
parent 2532bdfabf
commit b6e995ca3c
Notes: sideshowbarker 2024-07-18 08:52:35 +09:00

View file

@ -14,13 +14,13 @@ using Token = Web::HTML::HTMLToken;
#define BEGIN_ENUMERATION(tokens) \
auto current_token = (tokens).begin(); \
Optional<Token> last_token;
[[maybe_unused]] Token* last_token;
#define END_ENUMERATION() \
EXPECT(current_token.is_end());
#define NEXT_TOKEN() \
last_token = *current_token; \
last_token = &*current_token; \
++current_token;
#define EXPECT_START_TAG_TOKEN(_tag_name) \
@ -56,11 +56,11 @@ using Token = Web::HTML::HTMLToken;
NEXT_TOKEN();
#define EXPECT_TAG_TOKEN_ATTRIBUTE(name, value) \
VERIFY(last_token.has_value()); \
VERIFY(last_token); \
EXPECT_EQ(last_token->attribute(#name), #value);
#define EXPECT_TAG_TOKEN_ATTRIBUTE_COUNT(count) \
VERIFY(last_token.has_value()); \
VERIFY(last_token); \
EXPECT_EQ(last_token->attribute_count(), (size_t)(count));
static Vector<Token> run_tokenizer(StringView const& input)