@@ -26,8 +26,8 @@ const parserOptions = {
2626
2727const ruleTester = new RuleTester ( { parserOptions} ) ;
2828const defaultErrors = [ {
29- message : 'Using target="_blank" without rel="noopener noreferrer" is a security risk:' +
30- ' see https://mathiasbynens.github.io/rel -noopener'
29+ message : 'Using target="_blank" without rel="noreferrer" is a security risk:' +
30+ ' see https://html.spec.whatwg.org/multipage/links.html#link-type -noopener'
3131} ] ;
3232
3333ruleTester . run ( 'jsx-no-target-blank' , rule , {
@@ -36,18 +36,29 @@ ruleTester.run('jsx-no-target-blank', rule, {
3636 { code : '<a randomTag></a>' } ,
3737 { code : '<a target />' } ,
3838 { code : '<a href="foobar" target="_blank" rel="noopener noreferrer"></a>' } ,
39+ { code : '<a href="foobar" target="_blank" rel="noreferrer"></a>' } ,
3940 { code : '<a href="foobar" target="_blank" rel={"noopener noreferrer"}></a>' } ,
41+ { code : '<a href="foobar" target="_blank" rel={"noreferrer"}></a>' } ,
4042 { code : '<a href={"foobar"} target={"_blank"} rel={"noopener noreferrer"}></a>' } ,
43+ { code : '<a href={"foobar"} target={"_blank"} rel={"noreferrer"}></a>' } ,
4144 { code : '<a href={\'foobar\'} target={\'_blank\'} rel={\'noopener noreferrer\'}></a>' } ,
45+ { code : '<a href={\'foobar\'} target={\'_blank\'} rel={\'noreferrer\'}></a>' } ,
4246 { code : '<a href={`foobar`} target={`_blank`} rel={`noopener noreferrer`}></a>' } ,
47+ { code : '<a href={`foobar`} target={`_blank`} rel={`noreferrer`}></a>' } ,
4348 { code : '<a target="_blank" {...spreadProps} rel="noopener noreferrer"></a>' } ,
49+ { code : '<a target="_blank" {...spreadProps} rel="noreferrer"></a>' } ,
4450 { code : '<a {...spreadProps} target="_blank" rel="noopener noreferrer" href="http://example.com">s</a>' } ,
51+ { code : '<a {...spreadProps} target="_blank" rel="noreferrer" href="http://example.com">s</a>' } ,
4552 { code : '<a target="_blank" rel="noopener noreferrer" {...spreadProps}></a>' } ,
53+ { code : '<a target="_blank" rel="noreferrer" {...spreadProps}></a>' } ,
4654 { code : '<p target="_blank"></p>' } ,
4755 { code : '<a href="foobar" target="_BLANK" rel="NOOPENER noreferrer"></a>' } ,
56+ { code : '<a href="foobar" target="_BLANK" rel="NOREFERRER"></a>' } ,
4857 { code : '<a target="_blank" rel={relValue}></a>' } ,
4958 { code : '<a target={targetValue} rel="noopener noreferrer"></a>' } ,
59+ { code : '<a target={targetValue} rel="noreferrer"></a>' } ,
5060 { code : '<a target={targetValue} rel={"noopener noreferrer"}></a>' } ,
61+ { code : '<a target={targetValue} rel={"noreferrer"}></a>' } ,
5162 { code : '<a target={targetValue} href="relative/path"></a>' } ,
5263 { code : '<a target={targetValue} href="/absolute/path"></a>' } ,
5364 { code : '<a target={\'targetValue\'} href="/absolute/path"></a>' } ,
@@ -89,6 +100,9 @@ ruleTester.run('jsx-no-target-blank', rule, {
89100 } , {
90101 code : '<a target="_blank" rel="noopenernoreferrer" href="http://example.com"></a>' ,
91102 errors : defaultErrors
103+ } , {
104+ code : '<a target="_blank" rel="no referrer" href="http://example.com"></a>' ,
105+ errors : defaultErrors
92106 } , {
93107 code : '<a target="_BLANK" href="http://example.com"></a>' ,
94108 errors : defaultErrors
0 commit comments