Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: test/mjsunit/harmony/regexp-dotall-disabled.js

Issue 2780173002: [regexp] Add support for dotAll flag (Closed)
Patch Set: Address comments Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « test/mjsunit/harmony/regexp-dotall.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2017 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // This tests that RegExp dotall features are not enabled when
6 // --harmony-regexp-dotall is not passed.
7
8 // Construction does not throw.
9 {
10 assertThrows("/./s", SyntaxError);
11 assertThrows(() => RegExp(".", "s"), SyntaxError);
12 assertThrows(() => new RegExp(".", "s"), SyntaxError);
13 assertThrows(() => new RegExp(".", "wtf"), SyntaxError);
14 }
15
16 // The flags accessors.
17 {
18 let re = /./gimyu;
19 assertEquals("gimuy", re.flags);
20 assertTrue(re.global);
21 assertTrue(re.ignoreCase);
22 assertTrue(re.multiline);
23 assertTrue(re.sticky);
24 assertTrue(re.unicode);
25
26 assertEquals(re.dotAll, undefined);
27 assertFalse("dotAll" in re);
28
29 let callCount = 0;
30 re.__defineGetter__("dotAll", () => { callCount++; return undefined; });
31 assertEquals("gimuy", re.flags);
32 assertEquals(callCount, 0);
33 }
34
35 // Default '.' behavior.
36 {
37 let re = /^.$/;
38 assertTrue(re.test("a"));
39 assertTrue(re.test("3"));
40 assertTrue(re.test("π"));
41 assertTrue(re.test("\u2027"));
42 assertTrue(re.test("\u0085"));
43 assertTrue(re.test("\v"));
44 assertTrue(re.test("\f"));
45 assertTrue(re.test("\u180E"));
46 assertFalse(re.test("\u{10300}")); // Supplementary plane.
47 assertFalse(re.test("\n"));
48 assertFalse(re.test("\r"));
49 assertFalse(re.test("\u2028"));
50 assertFalse(re.test("\u2029"));
51 }
52
53 // Default '.' behavior (unicode).
54 {
55 let re = /^.$/u;
56 assertTrue(re.test("a"));
57 assertTrue(re.test("3"));
58 assertTrue(re.test("π"));
59 assertTrue(re.test("\u2027"));
60 assertTrue(re.test("\u0085"));
61 assertTrue(re.test("\v"));
62 assertTrue(re.test("\f"));
63 assertTrue(re.test("\u180E"));
64 assertTrue(re.test("\u{10300}")); // Supplementary plane.
65 assertFalse(re.test("\n"));
66 assertFalse(re.test("\r"));
67 assertFalse(re.test("\u2028"));
68 assertFalse(re.test("\u2029"));
69 }
OLDNEW
« no previous file with comments | « test/mjsunit/harmony/regexp-dotall.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698