| Index: compiler/javatests/com/google/dart/compiler/parser/NegativeParserTest.java
|
| diff --git a/compiler/javatests/com/google/dart/compiler/parser/NegativeParserTest.java b/compiler/javatests/com/google/dart/compiler/parser/NegativeParserTest.java
|
| index d148b2e97d6ecea77ddb9e97c8f3070178930854..3ef6567fc588aadba6a1862f2c15a0b3b4ffcefc 100644
|
| --- a/compiler/javatests/com/google/dart/compiler/parser/NegativeParserTest.java
|
| +++ b/compiler/javatests/com/google/dart/compiler/parser/NegativeParserTest.java
|
| @@ -308,4 +308,31 @@ public class NegativeParserTest extends CompilerTestCase {
|
| errEx(ParserErrorCode.EXPECTED_TOKEN, 3, 7, 5),
|
| errEx(ParserErrorCode.UNEXPECTED_TOKEN, 4, 19, 5));
|
| }
|
| +
|
| + public void testInvalidStringInterpolation() {
|
| + parseExpectErrors(Joiner.on("\n").join(
|
| + "void main() {",
|
| + " print(\"1 ${42} 2 ${} 3\");",
|
| + " print(\"1 ${42} 2 ${10;} 3\");",
|
| + " print(\"1 ${42} 2 ${10,20} 3\");",
|
| + " print(\"1 ${42} 2 ${10 20} 3\");",
|
| + " print(\"$\");",
|
| + " print(\"$",
|
| + "}"),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN, 2, 22, 1),
|
| + errEx(ParserErrorCode.EXPECTED_TOKEN, 2, 23, 3),
|
| + errEx(ParserErrorCode.EXPECTED_TOKEN, 3, 24, 1),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 3, 25, 1),
|
| + errEx(ParserErrorCode.EXPECTED_TOKEN, 4, 24, 1),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 4, 25, 2),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 4, 27, 1),
|
| + errEx(ParserErrorCode.EXPECTED_TOKEN, 5, 25, 2),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 5, 27, 1),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 6, 11, 0),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 7, 11, 0),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 7, 11, 1),
|
| + errEx(ParserErrorCode.UNEXPECTED_TOKEN_IN_STRING_INTERPOLATION, 8, 1, 1),
|
| + errEx(ParserErrorCode.INCOMPLETE_STRING_LITERAL, 8, 1, 1),
|
| + errEx(ParserErrorCode.EXPECTED_COMMA_OR_RIGHT_PAREN, 8, 2, 0));
|
| + }
|
| }
|
|
|