@@ -2916,6 +2916,21 @@ ruleTester.run('no-unused-prop-types', rule, {
2916
2916
'}'
2917
2917
] . join ( '\n' ) ,
2918
2918
parser : 'babel-eslint'
2919
+ } , {
2920
+ code : [
2921
+ 'import BasePerson from \'./types\'' ,
2922
+ 'class Hello extends React.Component {' ,
2923
+ ' render () {' ,
2924
+ ' return <div>Hello {this.props.person.firstname}</div>;' ,
2925
+ ' }' ,
2926
+ '}' ,
2927
+ 'Hello.propTypes = {' ,
2928
+ ' person: ProTypes.shape({' ,
2929
+ ' ...BasePerson,' ,
2930
+ ' lastname: PropTypes.string' ,
2931
+ ' })' ,
2932
+ '};'
2933
+ ] . join ( '\n' )
2919
2934
}
2920
2935
] ,
2921
2936
@@ -4846,6 +4861,22 @@ ruleTester.run('no-unused-prop-types', rule, {
4846
4861
errors : [ {
4847
4862
message : '\'lastname\' PropType is defined but prop is never used'
4848
4863
} ]
4864
+ } , {
4865
+ code : [
4866
+ 'class Hello extends React.Component {' ,
4867
+ ' render () {' ,
4868
+ ' return <div>Hello {this.props.firstname}</div>;' ,
4869
+ ' }' ,
4870
+ '}' ,
4871
+ 'Hello.propTypes = {' ,
4872
+ ' ...BasePerson,' ,
4873
+ ' lastname: PropTypes.string' ,
4874
+ '};'
4875
+ ] . join ( '\n' ) ,
4876
+ parser : 'babel-eslint' ,
4877
+ errors : [ {
4878
+ message : '\'lastname\' PropType is defined but prop is never used'
4879
+ } ]
4849
4880
} , {
4850
4881
code : [
4851
4882
'import type {BasePerson} from \'./types\'' ,
@@ -4867,6 +4898,25 @@ ruleTester.run('no-unused-prop-types', rule, {
4867
4898
errors : [ {
4868
4899
message : '\'person.lastname\' PropType is defined but prop is never used'
4869
4900
} ]
4901
+ } , {
4902
+ code : [
4903
+ 'import BasePerson from \'./types\'' ,
4904
+ 'class Hello extends React.Component {' ,
4905
+ ' render () {' ,
4906
+ ' return <div>Hello {this.props.person.firstname}</div>;' ,
4907
+ ' }' ,
4908
+ '}' ,
4909
+ 'Hello.propTypes = {' ,
4910
+ ' person: ProTypes.shape({' ,
4911
+ ' ...BasePerson,' ,
4912
+ ' lastname: PropTypes.string' ,
4913
+ ' })' ,
4914
+ '};'
4915
+ ] . join ( '\n' ) ,
4916
+ options : [ { skipShapeProps : false } ] ,
4917
+ errors : [ {
4918
+ message : '\'person.lastname\' PropType is defined but prop is never used'
4919
+ } ]
4870
4920
}
4871
4921
4872
4922
/* , {
0 commit comments