Skip to content

Commit

Permalink
Add tests for non-ASCII LineTerminator characters in string literals
Browse files Browse the repository at this point in the history
  • Loading branch information
gibson042 committed May 7, 2018
1 parent 48b4aa6 commit ba124c3
Show file tree
Hide file tree
Showing 4 changed files with 66 additions and 0 deletions.
16 changes: 16 additions & 0 deletions test/language/literals/string/line-separator-eval.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Copyright (C) 2018 Richard Gibson. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
esid: sec-literals-string-literals
description: >
U+2028 LINE SEPARATOR can appear in string literals (eval code).
info: |
11.8.4 String Literals
All code points may appear literally in a string literal except for the
closing quote code points, U+005C (REVERSE SOLIDUS), U+000D (CARRIAGE RETURN),
and U+000A (LINE FEED).
---*/

assert.sameValue(eval("'\u2028'"), "\u2028");
17 changes: 17 additions & 0 deletions test/language/literals/string/line-separator.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// Copyright (C) 2018 Richard Gibson. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
esid: sec-literals-string-literals
description: >
U+2028 LINE SEPARATOR can appear in string literals.
info: |
11.8.4 String Literals
All code points may appear literally in a string literal except for the
closing quote code points, U+005C (REVERSE SOLIDUS), U+000D (CARRIAGE RETURN),
and U+000A (LINE FEED).
---*/

// U+2028 in strings; UTF8(0x2028) = 0xE2 0x80 0xA8
assert.sameValue("
", "\u2028");
16 changes: 16 additions & 0 deletions test/language/literals/string/paragraph-separator-eval.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Copyright (C) 2018 Richard Gibson. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
esid: sec-literals-string-literals
description: >
U+2029 PARAGRAPH SEPARATOR can appear in string literals (eval code).
info: |
11.8.4 String Literals
All code points may appear literally in a string literal except for the
closing quote code points, U+005C (REVERSE SOLIDUS), U+000D (CARRIAGE RETURN),
and U+000A (LINE FEED).
---*/

assert.sameValue(eval("'\u2029'"), "\u2029");
17 changes: 17 additions & 0 deletions test/language/literals/string/paragraph-separator.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// Copyright (C) 2018 Richard Gibson. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
esid: sec-literals-string-literals
description: >
U+2029 PARAGRAPH SEPARATOR can appear in string literals.
info: |
11.8.4 String Literals
All code points may appear literally in a string literal except for the
closing quote code points, U+005C (REVERSE SOLIDUS), U+000D (CARRIAGE RETURN),
and U+000A (LINE FEED).
---*/

// U+2029 in strings; UTF8(0x2029) = 0xE2 0x80 0xA9
assert.sameValue("
", "\u2029");

0 comments on commit ba124c3

Please sign in to comment.