@@ -218,6 +218,19 @@ ruleTester.run('prefer-read-only-props', rule, {
218218 ` ,
219219 features : [ 'ts' , 'no-babel-old' ] ,
220220 } ,
221+ {
222+ code : `
223+ import React from "react";
224+ type Props = {
225+ readonly name: string[];
226+ }
227+ const MyComponent: React.FC<Props> = async ({ name }) => {
228+ return <div>{name}</div>;
229+ };
230+ export default MyComponent;
231+ ` ,
232+ features : [ 'ts' , 'no-babel-old' ] ,
233+ } ,
221234 {
222235 code : `
223236 import React from "react";
@@ -500,6 +513,35 @@ ruleTester.run('prefer-read-only-props', rule, {
500513 } ,
501514 ] ,
502515 } ,
516+ {
517+ code : `
518+ import React from "react";
519+ type Props = {
520+ name: string[];
521+ }
522+ const MyComponent: React.FC<Props> = async ({ name }) => {
523+ return <div>{name}</div>;
524+ };
525+ export default MyComponent;
526+ ` ,
527+ output : `
528+ import React from "react";
529+ type Props = {
530+ readonly name: string[];
531+ }
532+ const MyComponent: React.FC<Props> = async ({ name }) => {
533+ return <div>{name}</div>;
534+ };
535+ export default MyComponent;
536+ ` ,
537+ features : [ 'ts' , 'no-babel-old' ] ,
538+ errors : [
539+ {
540+ messageId : 'readOnlyProp' ,
541+ data : { name : 'name' } ,
542+ } ,
543+ ] ,
544+ } ,
503545 {
504546 code : `
505547 type Props = {
0 commit comments