@@ -9,6 +9,8 @@ describe("The 'getStaticValue' function", () => {
9
9
{ code : "[1, 2, 3]" , expected : { value : [ 1 , 2 , 3 ] } } ,
10
10
{ code : "[,, 3]" , expected : { value : [ , , 3 ] } } , //eslint-disable-line no-sparse-arrays
11
11
{ code : "[1, ...[2, 3]]" , expected : { value : [ 1 , 2 , 3 ] } } ,
12
+ { code : "[1, ...[2, 3]].length" , expected : { value : 3 } } ,
13
+ { code : "[1, ...[2, 3]]['1']" , expected : { value : 2 } } ,
12
14
{ code : "[0, a]" , expected : null } ,
13
15
{ code : "[0, ...a]" , expected : null } ,
14
16
{ code : "a = 1 + 2" , expected : { value : 3 } } ,
@@ -74,6 +76,14 @@ describe("The 'getStaticValue' function", () => {
74
76
{ code : "1" , expected : { value : 1 } } ,
75
77
{ code : "'hello'" , expected : { value : "hello" } } ,
76
78
{ code : "/foo/gu" , expected : { value : / f o o / gu } } ,
79
+ { code : "RegExp(/foo/gu)" , expected : { value : / f o o / gu } } ,
80
+ { code : "RegExp(/foo/, 'gu')" , expected : { value : / f o o / gu } } ,
81
+ { code : "RegExp('foo', 'gu')" , expected : { value : / f o o / gu } } ,
82
+ { code : "new RegExp('foo', 'gu')" , expected : { value : / f o o / gu } } ,
83
+ { code : "/foo/gu.source" , expected : { value : "foo" } } ,
84
+ { code : "/foo/gu.flags" , expected : { value : "gu" } } ,
85
+ { code : "/foo/gu.unicode" , expected : { value : true } } ,
86
+ { code : "/foo/gu.ignoreCase" , expected : { value : false } } ,
77
87
{ code : "true && 1" , expected : { value : 1 } } ,
78
88
{ code : "false && a" , expected : { value : false } } ,
79
89
{ code : "true || a" , expected : { value : true } } ,
@@ -160,6 +170,8 @@ describe("The 'getStaticValue' function", () => {
160
170
{ code : "String.raw`\\unicode`" , expected : { value : "\\unicode" } } ,
161
171
{ code : "`he${a}o`" , expected : null } , //eslint-disable-line no-template-curly-in-string
162
172
{ code : "x`hello`" , expected : null } ,
173
+ { code : "'abc'.length" , expected : { value : 3 } } ,
174
+ { code : "'abc'[1]" , expected : { value : "b" } } ,
163
175
{ code : "' foo '.trim()" , expected : { value : "foo" } } ,
164
176
{ code : "' foo '.trim().toUpperCase()" , expected : { value : "FOO" } } ,
165
177
{ code : "' foo '.indexOf('f')" , expected : { value : 2 } } ,
0 commit comments