Merge pull request #1006 from leobalter/fix-info

Update RegExp#dotAll tests
This commit is contained in:
Leo Balter 2017-04-27 19:37:54 -04:00 committed by GitHub
commit a09f857ed8
7 changed files with 73 additions and 54 deletions

View File

@ -2,7 +2,7 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: pending
esid: sec-get-regexp.prototype.dotall
description: >
get RegExp.prototype.dotAll.length is 0.
info: >
@ -27,6 +27,8 @@ var desc = Object.getOwnPropertyDescriptor(RegExp.prototype, "dotAll");
assert.sameValue(desc.get.length, 0);
verifyNotEnumerable(desc.get, "length");
verifyNotWritable(desc.get, "length");
verifyConfigurable(desc.get, "length");
verifyProperty(desc.get, "length", {
enumerable: false,
writable: false,
configurable: true,
});

View File

@ -1,7 +1,7 @@
// Copyright (C) 2017 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: pending
esid: sec-get-regexp.prototype.dotall
description: >
RegExp.prototype.dotAll name
info: >
@ -13,13 +13,15 @@ includes: [propertyHelper.js]
features: [regexp-dotall]
---*/
var descriptor = Object.getOwnPropertyDescriptor(RegExp.prototype, 'dotAll');
var desc = Object.getOwnPropertyDescriptor(RegExp.prototype, "dotAll");
assert.sameValue(
descriptor.get.name,
'get dotAll'
desc.get.name,
"get dotAll"
);
verifyNotEnumerable(descriptor.get, 'name');
verifyNotWritable(descriptor.get, 'name');
verifyConfigurable(descriptor.get, 'name');
verifyProperty(desc.get, "name", {
enumerable: false,
writable: false,
configurable: true,
});

View File

@ -1,16 +1,29 @@
// Copyright (C) 2017 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: pending
esid: sec-get-regexp.prototype.dotall
description: >
`pending` property descriptor
info: >
info: |
RegExp.prototype.dotAll is an accessor property whose set accessor
function is undefined.
17 ECMAScript Standard Built-in Objects
Every accessor property described in clauses 18 through 26 and in Annex B.2 has the attributes
{ [[Enumerable]]: false, [[Configurable]]: true } unless otherwise specified. If only a get
accessor function is described, the set accessor function is the default value, undefined. If
only a set accessor is described the get accessor is the default value, undefined.
includes: [propertyHelper.js]
features: [regexp-dotall]
---*/
var desc = Object.getOwnPropertyDescriptor(RegExp.prototype, 'dotAll');
var desc = Object.getOwnPropertyDescriptor(RegExp.prototype, "dotAll");
assert.sameValue(desc.set, undefined);
assert.sameValue(typeof desc.get, 'function');
assert.sameValue(typeof desc.get, "function");
verifyProperty(RegExp.prototype, "dotAll", {
enumerable: false,
configurable: true,
});

View File

@ -2,15 +2,16 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-get-regexp.prototype.dotall
description: Invoked on an object without an [[OriginalFlags]] internal slot
esid: pending
info: >
get RegExp.prototype.dotAll
1. Let R be the this value.
2. If Type(R) is not Object, throw a TypeError exception.
3. If R does not have an [[OriginalFlags]] internal slot, throw a TypeError
exception.
3. If R does not have an [[OriginalFlags]] internal slot, then
a. If SameValue(R, %RegExpPrototype%) is true, return undefined.
b. Otherwise, throw a TypeError exception.
features: [regexp-dotall]
---*/

View File

@ -2,9 +2,9 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-get-regexp.prototype.dotall
description: >
`dotAll` accessor invoked on a non-object value
esid: pending
info: >
get RegExp.prototype.dotAll
@ -13,28 +13,28 @@ info: >
features: [Symbol, regexp-dotall]
---*/
var dotAll = Object.getOwnPropertyDescriptor(RegExp.prototype, 'dotAll').get;
var dotAll = Object.getOwnPropertyDescriptor(RegExp.prototype, "dotAll").get;
assert.throws(TypeError, function() {
dotAll.call(undefined);
});
}, "undefined");
assert.throws(TypeError, function() {
dotAll.call(null);
});
}, "null");
assert.throws(TypeError, function() {
dotAll.call(true);
});
}, "true");
assert.throws(TypeError, function() {
dotAll.call('string');
});
dotAll.call("string");
}, "string");
assert.throws(TypeError, function() {
dotAll.call(Symbol('s'));
});
dotAll.call(Symbol("s"));
}, "symbol");
assert.throws(TypeError, function() {
dotAll.call(4);
});
}, "number");

View File

@ -1,7 +1,8 @@
// Copyright (C) 2017 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: pending
esid: sec-get-regexp.prototype.dotall
description: >
Return value of `undefined` when the "this" value is the RegExp prototype
object
@ -13,6 +14,6 @@ info: |
features: [regexp-dotall]
---*/
var get = Object.getOwnPropertyDescriptor(RegExp.prototype, 'dotAll').get;
var get = Object.getOwnPropertyDescriptor(RegExp.prototype, "dotAll").get;
assert.sameValue(get.call(RegExp.prototype), undefined);

View File

@ -2,9 +2,9 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-get-regexp.prototype.dotall
description: >
`dotAll` accessor function invoked on a RegExp instance
esid: pending
info: >
21.2.5.12 get RegExp.prototype.dotAll
@ -14,26 +14,26 @@ info: >
features: [regexp-dotall]
---*/
assert.sameValue(/./.dotAll, false);
assert.sameValue(/./i.dotAll, false);
assert.sameValue(/./g.dotAll, false);
assert.sameValue(/./y.dotAll, false);
assert.sameValue(/./m.dotAll, false);
assert.sameValue(/./.dotAll, false, "/./.dotAll");
assert.sameValue(/./i.dotAll, false, "/./i.dotAll");
assert.sameValue(/./g.dotAll, false, "/./g.dotAll");
assert.sameValue(/./y.dotAll, false, "/./y.dotAll");
assert.sameValue(/./m.dotAll, false, "/./m.dotAll");
assert.sameValue(/./s.dotAll, true);
assert.sameValue(/./is.dotAll, true);
assert.sameValue(/./sg.dotAll, true);
assert.sameValue(/./is.dotAll, true);
assert.sameValue(/./ms.dotAll, true);
assert.sameValue(/./s.dotAll, true, "/./s.dotAll");
assert.sameValue(/./is.dotAll, true, "/./is.dotAll");
assert.sameValue(/./sg.dotAll, true, "/./sg.dotAll");
assert.sameValue(/./sy.dotAll, true, "/./sy.dotAll");
assert.sameValue(/./ms.dotAll, true, "/./ms.dotAll");
assert.sameValue(new RegExp(".", "").dotAll, false);
assert.sameValue(new RegExp(".", "i").dotAll, false);
assert.sameValue(new RegExp(".", "g").dotAll, false);
assert.sameValue(new RegExp(".", "y").dotAll, false);
assert.sameValue(new RegExp(".", "m").dotAll, false);
assert.sameValue(new RegExp(".", "").dotAll, false, "new RegExp('.', '').dotAll");
assert.sameValue(new RegExp(".", "i").dotAll, false, "new RegExp('.', 'i').dotAll");
assert.sameValue(new RegExp(".", "g").dotAll, false, "new RegExp('.', 'g').dotAll");
assert.sameValue(new RegExp(".", "y").dotAll, false, "new RegExp('.', 'y').dotAll");
assert.sameValue(new RegExp(".", "m").dotAll, false, "new RegExp('.', 'm').dotAll");
assert.sameValue(new RegExp(".", "s").dotAll, true);
assert.sameValue(new RegExp(".", "is").dotAll, true);
assert.sameValue(new RegExp(".", "sg").dotAll, true);
assert.sameValue(new RegExp(".", "is").dotAll, true);
assert.sameValue(new RegExp(".", "ms").dotAll, true);
assert.sameValue(new RegExp(".", "s").dotAll, true, "new RegExp('.', 's').dotAll");
assert.sameValue(new RegExp(".", "is").dotAll, true, "new RegExp('.', 'is').dotAll");
assert.sameValue(new RegExp(".", "sg").dotAll, true, "new RegExp('.', 'sg').dotAll");
assert.sameValue(new RegExp(".", "sy").dotAll, true, "new RegExp('.', 'sy').dotAll");
assert.sameValue(new RegExp(".", "ms").dotAll, true, "new RegExp('.', 'ms').dotAll");