@@ -417,6 +417,42 @@ ruleTester.run('no-render-return-undefined', rule, {
417417 }
418418 ` ,
419419 } ,
420+ {
421+ code : `
422+ const data = ['John', 'Ram' , 'Akul'];
423+ function App() {
424+ return data.map(name => <h1>{name}</h1>);
425+ }
426+ ` ,
427+ } ,
428+ {
429+ code : `
430+ const data = ['John', 'Ram' , 'Akul'];
431+ function App() {
432+ return data.map(name => {
433+ return <h1>{name}</h1>;
434+ });
435+ }
436+ ` ,
437+ } ,
438+ {
439+ code : `
440+ const data = ['John', 'Ram' , 'Akul'];
441+ function App() {
442+ return cond && data.map(name => {
443+ return <h1>{name}</h1>;
444+ });
445+ }
446+ ` ,
447+ } ,
448+ {
449+ code : `
450+ const data = ['John', 'Ram' , 'Akul'];
451+ function App() {
452+ return cond ? data.map(name => <h1>{name}</h1>) : null;
453+ }
454+ ` ,
455+ } ,
420456 ] ) ,
421457
422458 // Invalid Cases
@@ -845,5 +881,48 @@ ruleTester.run('no-render-return-undefined', rule, {
845881 ` ,
846882 errors : [ { messageId : 'returnsUndefined' } ] ,
847883 } ,
884+ {
885+ code : `
886+ const data = ['John', 'Ram' , 'Akul'];
887+ function App() {
888+ return cond ? data.map(name => <h1>{name}</h1>) : undefined;
889+ }
890+ ` ,
891+ errors : [ { messageId : 'returnsUndefined' } ] ,
892+ } ,
893+ {
894+ code : `
895+ const data = ['John', 'Ram' , 'Akul'];
896+ function App() {
897+ return data.map(name => {
898+ if(cond) return <h1>{name}</h1>;
899+ });
900+ }
901+ ` ,
902+ errors : [ { messageId : 'returnsUndefined' } ] ,
903+ } ,
904+ {
905+ code : `
906+ const data = ['John', 'Ram' , 'Akul'];
907+ function App() {
908+ if(cond) {
909+ return data.map(name => <h1>{name}</h1>);
910+ }
911+ }
912+ ` ,
913+ errors : [ { messageId : 'returnsUndefined' } ] ,
914+ } ,
915+ {
916+ code : `
917+ let x;
918+ const data = ['John', 'Ram' , 'Akul'];
919+ function App() {
920+ return cond ? data.map(name => {
921+ return <h1>{name}</h1>;
922+ }) : x;
923+ }
924+ ` ,
925+ errors : [ { messageId : 'returnsUndefined' } ] ,
926+ } ,
848927 ] ) ,
849928} ) ;
0 commit comments