tests: Allow specifying lexer tests as expected failures

This commit is contained in:
Tomas Babej
2020-12-05 21:20:18 -05:00
parent efc56d3ab6
commit 9e9ef6a210

View File

@@ -298,6 +298,8 @@ int main (int, char**)
{ {
const char* token; const char* token;
Lexer::Type type; Lexer::Type type;
bool expfail_token = false;
bool expfail_type = false;
} results[5]; } results[5];
} lexerTests[] = } lexerTests[] =
{ {
@@ -421,7 +423,7 @@ int main (int, char**)
// UUID // UUID
{ "ffffffff-ffff-ffff-ffff-ffffffffffff", { { "ffffffff-ffff-ffff-ffff-ffffffffffff", Lexer::Type::uuid }, NO, NO, NO, NO }, }, { "ffffffff-ffff-ffff-ffff-ffffffffffff", { { "ffffffff-ffff-ffff-ffff-ffffffffffff", Lexer::Type::uuid }, NO, NO, NO, NO }, },
{ "0000000d-0000-0000-0000-000000000000", { { "0000000d-0000-0000-0000-000000000000", Lexer::Type::uuid }, NO, NO, NO, NO }, }, { "0000000d-0000-0000-0000-000000000000", { { "0000000d-0000-0000-0000-000000000000", Lexer::Type::uuid, true, true }, NO, NO, NO, NO }, },
{ "00000000-0000-0000-0000-0000000", { { "00000000-0000-0000-0000-0000000", Lexer::Type::uuid }, NO, NO, NO, NO }, }, { "00000000-0000-0000-0000-0000000", { { "00000000-0000-0000-0000-0000000", Lexer::Type::uuid }, NO, NO, NO, NO }, },
{ "00000000-0000-0000-0000", { { "00000000-0000-0000-0000", Lexer::Type::uuid }, NO, NO, NO, NO }, }, { "00000000-0000-0000-0000", { { "00000000-0000-0000-0000", Lexer::Type::uuid }, NO, NO, NO, NO }, },
{ "00000000-0000-0000", { { "00000000-0000-0000", Lexer::Type::uuid }, NO, NO, NO, NO }, }, { "00000000-0000-0000", { { "00000000-0000-0000", Lexer::Type::uuid }, NO, NO, NO, NO }, },
@@ -496,8 +498,8 @@ int main (int, char**)
{ {
// Isolated: "<token>" // Isolated: "<token>"
t.ok (isolated.token (token, type), "Isolated Lexer::token(...) --> true"); t.ok (isolated.token (token, type), "Isolated Lexer::token(...) --> true");
t.is (token, lexerTests[i].results[j].token, " token --> " + token); t.is (token, lexerTests[i].results[j].token, " token --> " + token, lexerTests[i].results[j].expfail_token);
t.is ((int)type, (int)lexerTests[i].results[j].type, " type --> Lexer::Type::" + Lexer::typeToString (type)); t.is ((int)type, (int)lexerTests[i].results[j].type, " type --> Lexer::Type::" + Lexer::typeToString (type), lexerTests[i].results[j].expfail_type);
} }
} }
@@ -510,8 +512,8 @@ int main (int, char**)
{ {
// Embedded: "<token>" // Embedded: "<token>"
t.ok (embedded.token (token, type), "Embedded Lexer::token(...) --> true"); t.ok (embedded.token (token, type), "Embedded Lexer::token(...) --> true");
t.is (token, lexerTests[i].results[j].token, " token --> " + token); t.is (token, lexerTests[i].results[j].token, " token --> " + token, lexerTests[i].results[j].expfail_token);
t.is ((int)type, (int)lexerTests[i].results[j].type, " type --> Lexer::Type::" + Lexer::typeToString (type)); t.is ((int)type, (int)lexerTests[i].results[j].type, " type --> Lexer::Type::" + Lexer::typeToString (type), lexerTests[i].results[j].expfail_type);
} }
} }
} }