@@ -102,6 +102,14 @@ eslintTester.run('no-unused-state', rule, {
102102 return <SomeComponent />;
103103 }
104104 });` ,
105+ `var ComputedKeyFromTemplateLiteralTest = createReactClass({
106+ getInitialState: function() {
107+ return { [\`foo\`]: 0 };
108+ },
109+ render: function() {
110+ return <SomeComponent foo={this.state['foo']} />;
111+ }
112+ });` ,
105113 `var GetInitialStateMethodTest = createReactClass({
106114 getInitialState() {
107115 return { foo: 0 };
@@ -198,6 +206,14 @@ eslintTester.run('no-unused-state', rule, {
198206 return <SomeComponent />;
199207 }
200208 }` ,
209+ `class ComputedKeyFromTemplateLiteralTest extends React.Component {
210+ constructor() {
211+ this.state = { [\`foo\`]: 0 };
212+ }
213+ render() {
214+ return <SomeComponent foo={this.state.foo} />;
215+ }
216+ }` ,
201217 `class SetStateTest extends React.Component {
202218 onFooChange(newFoo) {
203219 this.setState({ foo: newFoo });
@@ -407,6 +423,17 @@ eslintTester.run('no-unused-state', rule, {
407423 })` ,
408424 errors : getErrorMessages ( [ 'foo' ] )
409425 } ,
426+ {
427+ code : `var UnusedComputedTemplateLiteralKeyStateTest = createReactClass({
428+ getInitialState: function() {
429+ return { [\`foo\`]: 0 };
430+ },
431+ render: function() {
432+ return <SomeComponent />;
433+ }
434+ })` ,
435+ errors : getErrorMessages ( [ 'foo' ] )
436+ } ,
410437 {
411438 code : `var UnusedComputedNumberLiteralKeyStateTest = createReactClass({
412439 getInitialState: function() {
@@ -493,6 +520,26 @@ eslintTester.run('no-unused-state', rule, {
493520 errors : getErrorMessages ( [ 'foo' ] ) ,
494521 parser : 'babel-eslint'
495522 } ,
523+ {
524+ code : `class UnusedComputedTemplateLiteralKeyStateTest extends React.Component {
525+ state = { [\`foo\`]: 0 };
526+ render() {
527+ return <SomeComponent />;
528+ }
529+ }` ,
530+ errors : getErrorMessages ( [ 'foo' ] ) ,
531+ parser : 'babel-eslint'
532+ } ,
533+ {
534+ code : `class UnusedComputedTemplateLiteralKeyStateTest extends React.Component {
535+ state = { [\`foo \\n bar\`]: 0 };
536+ render() {
537+ return <SomeComponent />;
538+ }
539+ }` ,
540+ errors : getErrorMessages ( [ 'foo \\n bar' ] ) ,
541+ parser : 'babel-eslint'
542+ } ,
496543 {
497544 code : `class UnusedComputedBooleanLiteralKeyStateTest extends React.Component {
498545 state = { [true]: 0 };
0 commit comments