@@ -38,8 +38,7 @@ ruleTester.run('prefer-es6-class', rule, {
38
38
'Hello.displayName = \'Hello\''
39
39
] . join ( '\n' ) ,
40
40
parserOptions : parserOptions
41
- } ,
42
- {
41
+ } , {
43
42
code : [
44
43
'export default class Hello extends React.Component {' ,
45
44
' render() {' ,
@@ -49,15 +48,33 @@ ruleTester.run('prefer-es6-class', rule, {
49
48
'Hello.displayName = \'Hello\''
50
49
] . join ( '\n' ) ,
51
50
parserOptions : parserOptions
52
- } ,
53
- {
51
+ } , {
54
52
code : [
55
53
'var Hello = "foo";' ,
56
54
'module.exports = {};'
57
55
] . join ( '\n' ) ,
58
56
parserOptions : parserOptions
59
- }
60
- ] ,
57
+ } , {
58
+ code : [
59
+ 'var Hello = React.createClass({' ,
60
+ ' render: function() {' ,
61
+ ' return <div>Hello {this.props.name}</div>;' ,
62
+ ' }' ,
63
+ '});'
64
+ ] . join ( '\n' ) ,
65
+ options : [ 'never' ] ,
66
+ parserOptions : parserOptions
67
+ } , {
68
+ code : [
69
+ 'class Hello extends React.Component {' ,
70
+ ' render() {' ,
71
+ ' return <div>Hello {this.props.name}</div>;' ,
72
+ ' }' ,
73
+ '}'
74
+ ] . join ( '\n' ) ,
75
+ options : [ 'always' ] ,
76
+ parserOptions : parserOptions
77
+ } ] ,
61
78
62
79
invalid : [ {
63
80
code : [
@@ -72,5 +89,31 @@ ruleTester.run('prefer-es6-class', rule, {
72
89
errors : [ {
73
90
message : 'Component should use es6 class instead of createClass'
74
91
} ]
92
+ } , {
93
+ code : [
94
+ 'var Hello = React.createClass({' ,
95
+ ' render: function() {' ,
96
+ ' return <div>Hello {this.props.name}</div>;' ,
97
+ ' }' ,
98
+ '});'
99
+ ] . join ( '\n' ) ,
100
+ options : [ 'always' ] ,
101
+ parserOptions : parserOptions ,
102
+ errors : [ {
103
+ message : 'Component should use es6 class instead of createClass'
104
+ } ]
105
+ } , {
106
+ code : [
107
+ 'class Hello extends React.Component {' ,
108
+ ' render() {' ,
109
+ ' return <div>Hello {this.props.name}</div>;' ,
110
+ ' }' ,
111
+ '}'
112
+ ] . join ( '\n' ) ,
113
+ options : [ 'never' ] ,
114
+ parserOptions : parserOptions ,
115
+ errors : [ {
116
+ message : 'Component should use createClass instead of es6 class'
117
+ } ]
75
118
}
76
119
] } ) ;
0 commit comments