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

Side by Side Diff: test/mjsunit/es6/regexp-flags.js

Issue 1857313003: Ship --harmony-regexp-exec (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 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 | « src/flag-definitions.h ('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
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Flags: --harmony-unicode-regexps 5 // Flags: --harmony-unicode-regexps
6 6
7 var r1 = /abc/gi; 7 var r1 = /abc/gi;
8 assertEquals("abc", r1.source); 8 assertEquals("abc", r1.source);
9 assertTrue(r1.global); 9 assertTrue(r1.global);
10 assertTrue(r1.ignoreCase); 10 assertTrue(r1.ignoreCase);
(...skipping 26 matching lines...) Expand all
37 get: function() { get_count++; return true; } 37 get: function() { get_count++; return true; }
38 }); 38 });
39 39
40 assertTrue(r3.global); 40 assertTrue(r3.global);
41 assertEquals(1, get_count); 41 assertEquals(1, get_count);
42 assertTrue(r3.ignoreCase); 42 assertTrue(r3.ignoreCase);
43 assertEquals(2, get_count); 43 assertEquals(2, get_count);
44 // Overridden flag getters affects the flags getter. 44 // Overridden flag getters affects the flags getter.
45 assertEquals("gi", r3.flags); 45 assertEquals("gi", r3.flags);
46 assertEquals(4, get_count); 46 assertEquals(4, get_count);
47 // Overridden flag getters do not affect the internal flags. 47 // Overridden flag getters affect string.replace
48 // TODO(adamk): Add more tests here once we've switched
49 // to use [[OriginalFlags]] in more cases.
48 assertEquals(expected, string.replace(r3, "X")); 50 assertEquals(expected, string.replace(r3, "X"));
49 assertEquals(4, get_count); 51 assertEquals(5, get_count);
50 52
51 53
52 function testName(name) { 54 function testName(name) {
53 // Test for ES2017 RegExp web compatibility semantics 55 // Test for ES2017 RegExp web compatibility semantics
54 // https://github.com/tc39/ecma262/pull/511 56 // https://github.com/tc39/ecma262/pull/511
55 assertEquals(name === "source" ? "(?:)" : undefined, 57 assertEquals(name === "source" ? "(?:)" : undefined,
56 RegExp.prototype[name]); 58 RegExp.prototype[name]);
57 assertEquals( 59 assertEquals(
58 "get " + name, 60 "get " + name,
59 Object.getOwnPropertyDescriptor(RegExp.prototype, name).get.name); 61 Object.getOwnPropertyDescriptor(RegExp.prototype, name).get.name);
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 }, 112 },
111 get unicode() { 113 get unicode() {
112 map.u = counter++; 114 map.u = counter++;
113 }, 115 },
114 get sticky() { 116 get sticky() {
115 map.y = counter++; 117 map.y = counter++;
116 } 118 }
117 }; 119 };
118 testGenericFlags(object); 120 testGenericFlags(object);
119 assertEquals({ g: 0, i: 1, m: 2, u: 3, y: 4 }, map); 121 assertEquals({ g: 0, i: 1, m: 2, u: 3, y: 4 }, map);
OLDNEW
« no previous file with comments | « src/flag-definitions.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698