Extend and fix unit tests.
This commit is contained in:
parent
328cdf3583
commit
9324d0716b
|
@ -410,14 +410,20 @@ public class TestSymbolIssues extends BaseJavaToolTest {
|
||||||
"TOKEN3: 'asdf';\n" +
|
"TOKEN3: 'asdf';\n" +
|
||||||
"TOKEN4: 'q' 'w' 'e' 'r' | A;\n" +
|
"TOKEN4: 'q' 'w' 'e' 'r' | A;\n" +
|
||||||
"TOKEN5: 'aaaa';\n" +
|
"TOKEN5: 'aaaa';\n" +
|
||||||
|
"TOKEN6: 'asdf';\n" +
|
||||||
|
"TOKEN7: 'qwer'+;\n" +
|
||||||
|
"TOKEN8: 'a' 'b' | 'b' | 'a' 'b';\n" +
|
||||||
"\n" +
|
"\n" +
|
||||||
"mode MODE1;\n" +
|
"mode MODE1;\n" +
|
||||||
"TOKEN6: 'asdf';\n" +
|
"TOKEN9: 'asdf';\n" +
|
||||||
"\n" +
|
"\n" +
|
||||||
"fragment A: 'A';",
|
"fragment A: 'A';",
|
||||||
|
|
||||||
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:4:0: token TOKEN3 unreachable. Its value asdf is always overlapped by token TOKEN1\n" +
|
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:4:0: One of the token TOKEN3 values unreachable. asdf is always overlapped by token TOKEN1\n" +
|
||||||
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:5:0: token TOKEN4 unreachable. Its value qwer is always overlapped by token TOKEN1\n"
|
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:5:0: One of the token TOKEN4 values unreachable. qwer is always overlapped by token TOKEN1\n" +
|
||||||
|
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:7:0: One of the token TOKEN6 values unreachable. asdf is always overlapped by token TOKEN1\n" +
|
||||||
|
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:7:0: One of the token TOKEN6 values unreachable. asdf is always overlapped by token TOKEN3\n" +
|
||||||
|
"warning(" + ErrorType.TOKEN_UNREACHABLE.code + "): Test.g4:9:0: One of the token TOKEN8 values unreachable. ab is always overlapped by token TOKEN8\n"
|
||||||
};
|
};
|
||||||
|
|
||||||
testErrors(test, false);
|
testErrors(test, false);
|
||||||
|
|
|
@ -269,11 +269,11 @@ public class TestToolSyntaxErrors extends BaseJavaToolTest {
|
||||||
"grammar A;\n" +
|
"grammar A;\n" +
|
||||||
"tokens{Foo}\n" +
|
"tokens{Foo}\n" +
|
||||||
"b : Foo ;\n" +
|
"b : Foo ;\n" +
|
||||||
"X : 'foo' -> popmode;\n" + // "meant" to use -> popMode
|
"X : 'foo1' -> popmode;\n" + // "meant" to use -> popMode
|
||||||
"Y : 'foo' -> token(Foo);", // "meant" to use -> type(Foo)
|
"Y : 'foo2' -> token(Foo);", // "meant" to use -> type(Foo)
|
||||||
|
|
||||||
"error(" + ErrorType.INVALID_LEXER_COMMAND.code + "): A.g4:4:13: lexer command popmode does not exist or is not supported by the current target\n" +
|
"error(" + ErrorType.INVALID_LEXER_COMMAND.code + "): A.g4:4:14: lexer command popmode does not exist or is not supported by the current target\n" +
|
||||||
"error(" + ErrorType.INVALID_LEXER_COMMAND.code + "): A.g4:5:13: lexer command token does not exist or is not supported by the current target\n"
|
"error(" + ErrorType.INVALID_LEXER_COMMAND.code + "): A.g4:5:14: lexer command token does not exist or is not supported by the current target\n"
|
||||||
};
|
};
|
||||||
super.testErrors(pair, true);
|
super.testErrors(pair, true);
|
||||||
}
|
}
|
||||||
|
@ -283,11 +283,11 @@ public class TestToolSyntaxErrors extends BaseJavaToolTest {
|
||||||
"grammar A;\n" +
|
"grammar A;\n" +
|
||||||
"tokens{Foo}\n" +
|
"tokens{Foo}\n" +
|
||||||
"b : Foo ;\n" +
|
"b : Foo ;\n" +
|
||||||
"X : 'foo' -> popMode(Foo);\n" + // "meant" to use -> popMode
|
"X : 'foo1' -> popMode(Foo);\n" + // "meant" to use -> popMode
|
||||||
"Y : 'foo' -> type;", // "meant" to use -> type(Foo)
|
"Y : 'foo2' -> type;", // "meant" to use -> type(Foo)
|
||||||
|
|
||||||
"error(" + ErrorType.UNWANTED_LEXER_COMMAND_ARGUMENT.code + "): A.g4:4:13: lexer command popMode does not take any arguments\n" +
|
"error(" + ErrorType.UNWANTED_LEXER_COMMAND_ARGUMENT.code + "): A.g4:4:14: lexer command popMode does not take any arguments\n" +
|
||||||
"error(" + ErrorType.MISSING_LEXER_COMMAND_ARGUMENT.code + "): A.g4:5:13: missing argument for lexer command type\n"
|
"error(" + ErrorType.MISSING_LEXER_COMMAND_ARGUMENT.code + "): A.g4:5:14: missing argument for lexer command type\n"
|
||||||
};
|
};
|
||||||
super.testErrors(pair, true);
|
super.testErrors(pair, true);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue