@@ -795,6 +795,19 @@ ruleTester.run('prop-types', rule, {
795
795
'}'
796
796
] . join ( '\n' ) ,
797
797
parser : 'babel-eslint'
798
+ } , {
799
+ code : [
800
+ 'class Hello extends React.Component {' ,
801
+ ' constructor(props, context) {' ,
802
+ ' super(props, context)' ,
803
+ ' this.state = { status: this.props.source.uri }' ,
804
+ ' }' ,
805
+ ' static propTypes = {' ,
806
+ ' source: PropTypes.object' ,
807
+ ' }' ,
808
+ '}'
809
+ ] . join ( '\n' ) ,
810
+ parser : 'babel-eslint'
798
811
} , {
799
812
// Should not be detected as a component
800
813
code : [
@@ -1286,6 +1299,33 @@ ruleTester.run('prop-types', rule, {
1286
1299
{ message : '\'source\' is missing in props validation for Hello' } ,
1287
1300
{ message : '\'source.uri\' is missing in props validation for Hello' }
1288
1301
]
1302
+ } , {
1303
+ code : [
1304
+ 'class Hello extends React.Component {' ,
1305
+ ' constructor(props, context) {' ,
1306
+ ' super(props, context)' ,
1307
+ ' this.state = { status: this.props.source }' ,
1308
+ ' }' ,
1309
+ '}'
1310
+ ] . join ( '\n' ) ,
1311
+ parser : 'babel-eslint' ,
1312
+ errors : [
1313
+ { message : '\'source\' is missing in props validation for Hello' }
1314
+ ]
1315
+ } , {
1316
+ code : [
1317
+ 'class Hello extends React.Component {' ,
1318
+ ' constructor(props, context) {' ,
1319
+ ' super(props, context)' ,
1320
+ ' this.state = { status: this.props.source.uri }' ,
1321
+ ' }' ,
1322
+ '}'
1323
+ ] . join ( '\n' ) ,
1324
+ parser : 'babel-eslint' ,
1325
+ errors : [
1326
+ { message : '\'source\' is missing in props validation for Hello' } ,
1327
+ { message : '\'source.uri\' is missing in props validation for Hello' }
1328
+ ]
1289
1329
}
1290
1330
]
1291
1331
} ) ;
0 commit comments