@@ -22,6 +22,11 @@ ruleTester.run("no-dupe-keys", rule, {
22
22
valid : [
23
23
"var foo = { __proto__: 1, two: 2};" ,
24
24
"var x = { foo: 1, bar: 2 };" ,
25
+ "var x = { '': 1, bar: 2 };" ,
26
+ "var x = { '': 1, ' ': 2 };" ,
27
+ { code : "var x = { '': 1, [null]: 2 };" , parserOptions : { ecmaVersion : 6 } } ,
28
+ { code : "var x = { '': 1, [a]: 2 };" , parserOptions : { ecmaVersion : 6 } } ,
29
+ { code : "var x = { [a]: 1, [a]: 2 };" , parserOptions : { ecmaVersion : 6 } } ,
25
30
"+{ get a() { }, set a(b) { } };" ,
26
31
{ code : "var x = { a: b, [a]: b };" , parserOptions : { ecmaVersion : 6 } } ,
27
32
{ code : "var x = { a: b, ...c }" , parserOptions : { ecmaVersion : 2018 } } ,
@@ -32,6 +37,8 @@ ruleTester.run("no-dupe-keys", rule, {
32
37
invalid : [
33
38
{ code : "var x = { a: b, ['a']: b };" , parserOptions : { ecmaVersion : 6 } , errors : [ { messageId : "unexpected" , data : { name : "a" } , type : "ObjectExpression" } ] } ,
34
39
{ code : "var x = { y: 1, y: 2 };" , errors : [ { messageId : "unexpected" , data : { name : "y" } , type : "ObjectExpression" } ] } ,
40
+ { code : "var x = { '': 1, '': 2 };" , errors : [ { messageId : "unexpected" , data : { name : "" } , type : "ObjectExpression" } ] } ,
41
+ { code : "var x = { '': 1, [``]: 2 };" , parserOptions : { ecmaVersion : 6 } , errors : [ { messageId : "unexpected" , data : { name : "" } , type : "ObjectExpression" } ] } ,
35
42
{ code : "var foo = { 0x1: 1, 1: 2};" , errors : [ { messageId : "unexpected" , data : { name : "1" } , type : "ObjectExpression" } ] } ,
36
43
{ code : "var x = { \"z\": 1, z: 2 };" , errors : [ { messageId : "unexpected" , data : { name : "z" } , type : "ObjectExpression" } ] } ,
37
44
{ code : "var foo = {\n bar: 1,\n bar: 1,\n}" , errors : [ { messageId : "unexpected" , data : { name : "bar" } , line : 3 , column : 3 } ] } ,
0 commit comments