Split test_token to avoid compiler note (#392)
Signed-off-by: Shane Loretz <sloretz@osrfoundation.org>
This commit is contained in:
parent
e133167524
commit
b5cdc496d0
1 changed files with 25 additions and 1 deletions
|
@ -49,14 +49,17 @@ public:
|
||||||
EXPECT_STREQ(expected_text, actual_text.c_str()); \
|
EXPECT_STREQ(expected_text, actual_text.c_str()); \
|
||||||
} while (false)
|
} while (false)
|
||||||
|
|
||||||
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_different_endings)
|
||||||
{
|
{
|
||||||
// Things get recognized as tokens whether input ends or non token characters come after them
|
// Things get recognized as tokens whether input ends or non token characters come after them
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo", "foo");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo", "foo");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo", "foo:");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo", "foo:");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo_", "foo_");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo_", "foo_");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo_", "foo_:");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "foo_", "foo_:");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_start_char)
|
||||||
|
{
|
||||||
// Check full range for starting character
|
// Check full range for starting character
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a", "a");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a", "a");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "b", "b");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "b", "b");
|
||||||
|
@ -111,13 +114,19 @@ TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "Y", "Y");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "Y", "Y");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "Z", "Z");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "Z", "Z");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_", "_");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_", "_");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_adjacent_ascii)
|
||||||
|
{
|
||||||
// Check banned characters adjacent to allowed ones in ASCII
|
// Check banned characters adjacent to allowed ones in ASCII
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "@", "@");
|
EXPECT_LEX(RCL_LEXEME_NONE, "@", "@");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "[", "[");
|
EXPECT_LEX(RCL_LEXEME_NONE, "[", "[");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "`", "`");
|
EXPECT_LEX(RCL_LEXEME_NONE, "`", "`");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "{", "{");
|
EXPECT_LEX(RCL_LEXEME_NONE, "{", "{");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_cannot_start_with_digits)
|
||||||
|
{
|
||||||
// Tokens cannot start with digits
|
// Tokens cannot start with digits
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "0", "0");
|
EXPECT_LEX(RCL_LEXEME_NONE, "0", "0");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "1", "1");
|
EXPECT_LEX(RCL_LEXEME_NONE, "1", "1");
|
||||||
|
@ -129,7 +138,10 @@ TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "7", "7");
|
EXPECT_LEX(RCL_LEXEME_NONE, "7", "7");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "8", "8");
|
EXPECT_LEX(RCL_LEXEME_NONE, "8", "8");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "9", "9");
|
EXPECT_LEX(RCL_LEXEME_NONE, "9", "9");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_underscores)
|
||||||
|
{
|
||||||
// Tokens may contain underscores
|
// Tokens may contain underscores
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_abcd", "_abcd");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_abcd", "_abcd");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "abcd_", "abcd_");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "abcd_", "abcd_");
|
||||||
|
@ -142,7 +154,10 @@ TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "A_", "A__bcd");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "A_", "A__bcd");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "__a", "__a");
|
EXPECT_LEX(RCL_LEXEME_NONE, "__a", "__a");
|
||||||
EXPECT_LEX(RCL_LEXEME_NONE, "__A", "__A");
|
EXPECT_LEX(RCL_LEXEME_NONE, "__A", "__A");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_contain_digits)
|
||||||
|
{
|
||||||
// Tokens may contain digits
|
// Tokens may contain digits
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_0_", "_0_");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_0_", "_0_");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_1_", "_1_");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_1_", "_1_");
|
||||||
|
@ -164,7 +179,10 @@ TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a7a", "a7a");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a7a", "a7a");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a8a", "a8a");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a8a", "a8a");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a9a", "a9a");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a9a", "a9a");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_end_with_digits)
|
||||||
|
{
|
||||||
// Tokens may end with digits
|
// Tokens may end with digits
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_0", "_0");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_0", "_0");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_1", "_1");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_1", "_1");
|
||||||
|
@ -186,7 +204,10 @@ TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a7", "a7");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a7", "a7");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a8", "a8");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a8", "a8");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "a9", "a9");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "a9", "a9");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_close_to_url_scheme)
|
||||||
|
{
|
||||||
// Things that almost look like a url scheme but are actually tokens
|
// Things that almost look like a url scheme but are actually tokens
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "ro", "ro");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "ro", "ro");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "ros", "ros");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "ros", "ros");
|
||||||
|
@ -210,7 +231,10 @@ TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token)
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "rostopic", "rostopic:=");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "rostopic", "rostopic:=");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "rostopic", "rostopic:/");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "rostopic", "rostopic:/");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "rostopic", "rostopic:/a");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "rostopic", "rostopic:/a");
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(CLASSNAME(TestLexerFixture, RMW_IMPLEMENTATION), test_token_upper_case)
|
||||||
|
{
|
||||||
// Tokens may contain uppercase characters
|
// Tokens may contain uppercase characters
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "ABC", "ABC");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "ABC", "ABC");
|
||||||
EXPECT_LEX(RCL_LEXEME_TOKEN, "_DEF", "_DEF");
|
EXPECT_LEX(RCL_LEXEME_TOKEN, "_DEF", "_DEF");
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue