Assert absense of internal slot on RegExpPrototype

The previous commit removed two invalid tests designed to ensure that
the RegExpPrototype object is not itself a RegExp object. Introduce a
new test to assert this detail in a way that accounts for the
possibility of host extensions.
This commit is contained in:
Mike Pennisi 2016-06-29 16:41:09 -04:00
parent 9c3bb8d69e
commit 1d0dbc5726
1 changed files with 23 additions and 0 deletions

View File

@ -0,0 +1,23 @@
// 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-properties-of-the-regexp-prototype-object
es6id: 21.2.5
description: >
The RegExp prototype object does not have a [[RegExpMatcher]] internal slot
info: |
The RegExp prototype object is an ordinary object. It is not a RegExp
instance and does not have a [[RegExpMatcher]] internal slot or any of the
other internal slots of RegExp instance objects.
21.2.5.2 RegExp.prototype.exec
1. Let R be the this value.
2. If Type(R) is not Object, throw a TypeError exception.
3. If R does not have a [[RegExpMatcher]] internal slot, throw a TypeError
exception.
---*/
assert.throws(TypeError, function() {
RegExp.prototype.exec('');
});