mirror of https://github.com/tc39/test262.git
Fix tests for #constructor
This commit is contained in:
parent
45a31876e7
commit
e25e53c0a7
|
@ -0,0 +1,40 @@
|
|||
// Copyright (C) 2018 Leo Balter. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
/*---
|
||||
description: "#constructor is a valid property name for a public field"
|
||||
esid: sec-class-definitions-static-semantics-early-errors
|
||||
features: [class, class-fields-public]
|
||||
info: |
|
||||
ClassElementName : PrivateName;
|
||||
|
||||
It is a Syntax Error if StringValue of PrivateName is "#constructor".
|
||||
includes: [propertyHelper.js]
|
||||
---*/
|
||||
|
||||
class C1 {
|
||||
["#constructor"];
|
||||
}
|
||||
|
||||
var c1 = new C1();
|
||||
|
||||
assert.sameValue(Object.prototype.hasOwnProperty.call(C1, '#constructor'), false);
|
||||
verifyProperty(c1, '#constructor', {
|
||||
value: undefined,
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
writable: true,
|
||||
});
|
||||
|
||||
class C2 {
|
||||
["#constructor"] = 42;
|
||||
}
|
||||
|
||||
var c2 = new C2();
|
||||
|
||||
assert.sameValue(Object.prototype.hasOwnProperty.call(C2, '#constructor'), false);
|
||||
verifyProperty(c2, '#constructor', {
|
||||
value: 42,
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
writable: true,
|
||||
});
|
|
@ -1,22 +0,0 @@
|
|||
// Copyright (C) 2017 Valerie Young. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
/*---
|
||||
description: static class fields forbid PropName 'prototype' (early error -- PropName of StringLiteral is forbidden value)
|
||||
esid: sec-class-definitions-static-semantics-early-errors
|
||||
features: [class, class-fields-private]
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
info: |
|
||||
ClassElementName : PrivateName;
|
||||
|
||||
It is a Syntax Error if StringValue of PrivateName is "#constructor".
|
||||
|
||||
---*/
|
||||
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
class C {
|
||||
["#constructor"];
|
||||
}
|
Loading…
Reference in New Issue