test262/test/built-ins/RegExp/lastIndex.js
Mike Pennisi 4e781091f8 Improve tests for RegExp lastIndex property
The prior version of this test asserted only the property's
configurability. It was also limited to the RegExp object as returned
from the RegExp constructor.

Extend the test to verify all values of the property descriptor.
Duplicate these assertions in a separate file dedicated to the RegExp
object as created from a RegExp literal.
2016-06-29 17:29:43 -04:00

34 lines
880 B
JavaScript

// Copyright (C) 2016 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-regexp-pattern-flags
es6id: 21.2.3.1
description: Initial state of the `lastIndex` property
info: |
[...]
7. Let O be ? RegExpAlloc(newTarget).
8. Return ? RegExpInitialize(O, P, F).
21.2.3.2.2 Runtime Semantics: RegExpInitialize
[...]
12. Perform ? Set(obj, "lastIndex", 0, true).
[...]
21.2.3.2.1 Runtime Semantics: RegExpAlloc
[...]
2. Perform ! DefinePropertyOrThrow(obj, "lastIndex", PropertyDescriptor
{[[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: false}).
[...]
includes: [propertyHelper.js]
---*/
var re = new RegExp('');
assert.sameValue(re.lastIndex, 0);
verifyNotEnumerable(re, 'lastIndex');
verifyWritable(re, 'lastIndex');
verifyNotConfigurable(re, 'lastIndex');