diff --git a/tests/lib/rules/no-unused-prop-types.js b/tests/lib/rules/no-unused-prop-types.js
index 0b32121c48..5801ab71d6 100644
--- a/tests/lib/rules/no-unused-prop-types.js
+++ b/tests/lib/rules/no-unused-prop-types.js
@@ -1094,6 +1094,30 @@ ruleTester.run('no-unused-prop-types', rule, {
'}'
].join('\n'),
parser: parsers.BABEL_ESLINT
+ }, {
+ code: [
+ 'type Props = {notTarget: string};',
+ 'class Hello extends React.Component {',
+ ' props: Props;',
+ ' onEvent({ target }: { target: Object }) {};',
+ ' render () {',
+ ' return
Hello {this.props.notTarget}
;',
+ ' }',
+ '}'
+ ].join('\n'),
+ parser: parsers.BABEL_ESLINT
+ }, {
+ code: [
+ 'type Props = {notTarget: string};',
+ 'class Hello extends React.Component {',
+ ' props: Props;',
+ ' onEvent(infos: { target: Object }) {};',
+ ' render () {',
+ ' return Hello {this.props.notTarget}
;',
+ ' }',
+ '}'
+ ].join('\n'),
+ parser: parsers.BABEL_ESLINT
}, {
code: [
'class Hello extends React.Component {',
@@ -5081,6 +5105,21 @@ ruleTester.run('no-unused-prop-types', rule, {
errors: [{
message: '\'person.lastname\' PropType is defined but prop is never used'
}]
+ }, {
+ code: [
+ 'type Props = {notTarget: string, unused: string};',
+ 'class Hello extends React.Component {',
+ ' props: Props;',
+ ' onEvent = ({ target }: { target: Object }) => {};',
+ ' render () {',
+ ' return Hello {this.props.notTarget}
;',
+ ' }',
+ '}'
+ ].join('\n'),
+ parser: parsers.BABEL_ESLINT,
+ errors: [
+ {message: '\'unused\' PropType is defined but prop is never used'}
+ ]
}, {
code: `
import PropTypes from 'prop-types';