mirror of https://github.com/tc39/test262.git
Add "lastIndex" init test
This commit is contained in:
parent
fe4e96d8b0
commit
fe2dfe9525
30
test/built-ins/RegExp/prototype/Symbol.search/set-lastindex-init-samevalue.js
vendored
Normal file
30
test/built-ins/RegExp/prototype/Symbol.search/set-lastindex-init-samevalue.js
vendored
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
// Copyright (C) 2020 Alexey Shvayka. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
esid: sec-regexp.prototype-@@search
|
||||||
|
description: >
|
||||||
|
`previousLastIndex` value is compared using SameValue.
|
||||||
|
info: |
|
||||||
|
RegExp.prototype [ @@search ] ( string )
|
||||||
|
|
||||||
|
[...]
|
||||||
|
4. Let previousLastIndex be ? Get(rx, "lastIndex").
|
||||||
|
5. If SameValue(previousLastIndex, 0) is false, then
|
||||||
|
a. Perform ? Set(rx, "lastIndex", 0, true).
|
||||||
|
6. Let result be ? RegExpExec(rx, S).
|
||||||
|
[...]
|
||||||
|
features: [Symbol.search]
|
||||||
|
---*/
|
||||||
|
|
||||||
|
var re = /(?:)/;
|
||||||
|
var execLastIndex;
|
||||||
|
|
||||||
|
re.lastIndex = -0;
|
||||||
|
re.exec = function() {
|
||||||
|
execLastIndex = re.lastIndex;
|
||||||
|
return null;
|
||||||
|
};
|
||||||
|
|
||||||
|
assert.sameValue(re[Symbol.search](""), -1);
|
||||||
|
assert.sameValue(execLastIndex, 0);
|
Loading…
Reference in New Issue