summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorValerie R Young <valerie@bocoup.com>2017-10-31 14:19:30 -0400
committerValerie R Young <valerie@bocoup.com>2017-10-31 14:49:25 -0400
commit889857ccb5ce8d4f75b8f94db1e08d192b0fd956 (patch)
tree102b5bb71327ebdce236c1fa31933e2dee6d7bd4 /src
parent2664e17e1d13ba0aecb4701a7ab79f787604adb1 (diff)
downloadqtdeclarative-testsuites-889857ccb5ce8d4f75b8f94db1e08d192b0fd956.tar.gz
Fixes for forbidden property names
Diffstat (limited to 'src')
-rw-r--r--src/class-fields/propname-constructor.case2
-rw-r--r--src/class-fields/propname-error/cls-decl-computed-name.template2
-rw-r--r--src/class-fields/propname-error/cls-decl-literal-name.template2
-rw-r--r--src/class-fields/propname-error/cls-decl-string-name.template4
-rw-r--r--src/class-fields/propname-error/cls-decl-variable-name.template22
-rw-r--r--src/class-fields/propname-error/cls-expr-computed-name.template2
-rw-r--r--src/class-fields/propname-error/cls-expr-literal-name.template2
-rw-r--r--src/class-fields/propname-error/cls-expr-string-name.template4
-rw-r--r--src/class-fields/propname-error/cls-expr-variable-name.template22
-rw-r--r--src/class-fields/static-propname-constructor.case2
-rw-r--r--src/class-fields/static-propname-prototype.case2
11 files changed, 55 insertions, 11 deletions
diff --git a/src/class-fields/propname-constructor.case b/src/class-fields/propname-constructor.case
index a700e9911..3353606dd 100644
--- a/src/class-fields/propname-constructor.case
+++ b/src/class-fields/propname-constructor.case
@@ -2,7 +2,7 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
-desc: Static class fields cannot have PropName 'constructor'
+desc: class fields forbid PropName 'constructor'
info: |
// This test file tests the following early error:
diff --git a/src/class-fields/propname-error/cls-decl-computed-name.template b/src/class-fields/propname-error/cls-decl-computed-name.template
index 72e252f80..406a20970 100644
--- a/src/class-fields/propname-error/cls-decl-computed-name.template
+++ b/src/class-fields/propname-error/cls-decl-computed-name.template
@@ -4,7 +4,7 @@
/*---
esid: sec-class-definitions-static-semantics-early-errors
path: language/statements/class/fields-computed-name-
-name: computed
+name: no early error -- PropName of ComputedPropertyName not forbidden value
info: |
Static Semantics: PropName
...
diff --git a/src/class-fields/propname-error/cls-decl-literal-name.template b/src/class-fields/propname-error/cls-decl-literal-name.template
index b51b78ef2..3c4ce9e9e 100644
--- a/src/class-fields/propname-error/cls-decl-literal-name.template
+++ b/src/class-fields/propname-error/cls-decl-literal-name.template
@@ -4,7 +4,7 @@
/*---
esid: sec-class-definitions-static-semantics-early-errors
path: language/statements/class/fields-literal-name-
-name: literal name
+name: early error -- PropName of IdentifierName is forbidden value
negative:
type: SyntaxError
phase: early
diff --git a/src/class-fields/propname-error/cls-decl-string-name.template b/src/class-fields/propname-error/cls-decl-string-name.template
index 173990f66..743f20f74 100644
--- a/src/class-fields/propname-error/cls-decl-string-name.template
+++ b/src/class-fields/propname-error/cls-decl-string-name.template
@@ -4,14 +4,14 @@
/*---
esid: sec-class-definitions-static-semantics-early-errors
path: language/statements/class/fields-string-name-
-name: string name
+name: early error -- PropName of StringLiteral is forbidden value
negative:
type: SyntaxError
phase: early
info: |
Static Semantics: PropName
...
- LiteralPropertyName:StringLiteral
+ LiteralPropertyName : StringLiteral
Return the String value whose code units are the SV of the StringLiteral.
---*/
diff --git a/src/class-fields/propname-error/cls-decl-variable-name.template b/src/class-fields/propname-error/cls-decl-variable-name.template
new file mode 100644
index 000000000..cbda5b831
--- /dev/null
+++ b/src/class-fields/propname-error/cls-decl-variable-name.template
@@ -0,0 +1,22 @@
+// Copyright (C) 2017 Valerie Young. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-class-definitions-static-semantics-early-errors
+path: language/statements/class/fields-computed-variable-name-
+name: no early error -- PropName of ComputedPropertyName not forbidden value
+info: |
+ Static Semantics: PropName
+ ...
+ ComputedPropertyName : [ AssignmentExpression ]
+ Return empty.
+---*/
+
+var /*{ propname }*/ = 'foo';
+class C {
+ /*{ static }*/ [/*{ propname }*/];
+}
+
+var c = new C();
+
+assert.sameValue(c.hasOwnProperty("foo"), true);
diff --git a/src/class-fields/propname-error/cls-expr-computed-name.template b/src/class-fields/propname-error/cls-expr-computed-name.template
index dc3768183..e509263ee 100644
--- a/src/class-fields/propname-error/cls-expr-computed-name.template
+++ b/src/class-fields/propname-error/cls-expr-computed-name.template
@@ -4,7 +4,7 @@
/*---
esid: sec-class-definitions-static-semantics-early-errors
path: language/expressions/class/fields-computed-name-
-name: computed
+name: no early error -- PropName of ComputedPropertyName not forbidden value
info: |
Static Semantics: PropName
...
diff --git a/src/class-fields/propname-error/cls-expr-literal-name.template b/src/class-fields/propname-error/cls-expr-literal-name.template
index 84d8310ab..bd87b81d2 100644
--- a/src/class-fields/propname-error/cls-expr-literal-name.template
+++ b/src/class-fields/propname-error/cls-expr-literal-name.template
@@ -4,7 +4,7 @@
/*---
esid: sec-class-definitions-static-semantics-early-errors
path: language/expressions/class/fields-literal-name-
-name: literal name
+name: early error -- PropName of IdentifierName is forbidden
negative:
type: SyntaxError
phase: early
diff --git a/src/class-fields/propname-error/cls-expr-string-name.template b/src/class-fields/propname-error/cls-expr-string-name.template
index b6a3af65c..189a1bd80 100644
--- a/src/class-fields/propname-error/cls-expr-string-name.template
+++ b/src/class-fields/propname-error/cls-expr-string-name.template
@@ -4,14 +4,14 @@
/*---
esid: sec-class-definitions-static-semantics-early-errors
path: language/expressions/class/fields-string-name-
-name: string name
+name: early error -- PropName of StringLiteral is forbidden
negative:
type: SyntaxError
phase: early
info: |
Static Semantics: PropName
...
- LiteralPropertyName:StringLiteral
+ LiteralPropertyName : StringLiteral
Return the String value whose code units are the SV of the StringLiteral.
---*/
diff --git a/src/class-fields/propname-error/cls-expr-variable-name.template b/src/class-fields/propname-error/cls-expr-variable-name.template
new file mode 100644
index 000000000..50b255197
--- /dev/null
+++ b/src/class-fields/propname-error/cls-expr-variable-name.template
@@ -0,0 +1,22 @@
+// Copyright (C) 2017 Valerie Young. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-class-definitions-static-semantics-early-errors
+path: language/expressions/class/fields-computed-variable-name-
+name: no early error -- PropName of ComputedPropertyName not forbidden value
+info: |
+ Static Semantics: PropName
+ ...
+ ComputedPropertyName : [ AssignmentExpression ]
+ Return empty.
+---*/
+
+var /*{ propname }*/ = 'foo';
+var C = class {
+ /*{ static }*/ [/*{ propname }*/];
+}
+
+var c = new C();
+
+assert.sameValue(c.hasOwnProperty("foo"), true);
diff --git a/src/class-fields/static-propname-constructor.case b/src/class-fields/static-propname-constructor.case
index ffa6754e2..ff3d00af6 100644
--- a/src/class-fields/static-propname-constructor.case
+++ b/src/class-fields/static-propname-constructor.case
@@ -2,7 +2,7 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
-desc: Static class field cannot have PropName 'constructor'
+desc: static class field forbid PropName 'constructor'
info: |
// This test file tests the following early error:
diff --git a/src/class-fields/static-propname-prototype.case b/src/class-fields/static-propname-prototype.case
index 9b2e9ab33..99d85ff64 100644
--- a/src/class-fields/static-propname-prototype.case
+++ b/src/class-fields/static-propname-prototype.case
@@ -2,7 +2,7 @@
// This code is governed by the BSD license found in the LICENSE file.
/*---
-desc: Static class fields cannot have PropName 'prototype'
+desc: static class fields forbid PropName 'prototype'
info: |
// This test file tests the following early error: