| {"tests": [ |
| |
| {"description": "invalid link rel value 'foo'", |
| "input": "<link rel=foo>", |
| "fail-unless": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'alternate stylesheet'", |
| "input": "<link rel='alternate stylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading space", |
| "input": "<link rel=' stylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with trailing space", |
| "input": "<link rel='stylesheet '>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading and trailing space", |
| "input": "<link rel=' stylesheet '>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading tab", |
| "input": "<link rel='\tstylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with trailing tab", |
| "input": "<link rel='stylesheet\t'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading and trailing tab", |
| "input": "<link rel='\tstylesheet\t'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading LF", |
| "input": "<link rel='\nstylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with trailing LF", |
| "input": "<link rel='stylesheet\n'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading and trailing LF", |
| "input": "<link rel='\nstylesheet\n'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading LT", |
| "input": "<link rel='\u000Bstylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with trailing LT", |
| "input": "<link rel='stylesheet\u000B'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading and trailing LT", |
| "input": "<link rel='\u000Bstylesheet\u000B'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading FF", |
| "input": "<link rel='\u000Cstylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with trailing FF", |
| "input": "<link rel='stylesheet\u000C'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading and trailing FF", |
| "input": "<link rel='\u000Cstylesheet\u000C'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading CR", |
| "input": "<link rel='\rstylesheet'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with trailing CR", |
| "input": "<link rel='stylesheet\r'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid single link rel value with leading and trailing CR", |
| "input": "<link rel='\rstylesheet\r'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid double link rel value separated by space", |
| "input": "<link rel='stylesheet alternate'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid double link rel value separated by tab", |
| "input": "<link rel='stylesheet\talternate'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid double link rel value separated by LF", |
| "input": "<link rel='stylesheet\nalternate'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid double link rel value separated by LT", |
| "input": "<link rel='stylesheet\u000Balternate'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid double link rel value separated by FF", |
| "input": "<link rel='stylesheet\u000Calternate'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid double link rel value separated by CR", |
| "input": "<link rel='stylesheet\ralternate'>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "invalid duplicated link rel value separated by space", |
| "input": "<link rel='stylesheet stylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by tab", |
| "input": "<link rel='stylesheet\tstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by LF", |
| "input": "<link rel='stylesheet\nstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by LT", |
| "input": "<link rel='stylesheet\u000Bstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by FF", |
| "input": "<link rel='stylesheet\u000Cstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by CR", |
| "input": "<link rel='stylesheet\rstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by space", |
| "input": "<link rel='stylesheet stylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by tab", |
| "input": "<link rel='stylesheet\tstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by LF", |
| "input": "<link rel='stylesheet\nstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by LT", |
| "input": "<link rel='stylesheet\u000Bstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by FF", |
| "input": "<link rel='stylesheet\u000Cstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "invalid duplicated link rel value separated by CR", |
| "input": "<link rel='stylesheet\rstylesheet'>", |
| "fail-unless": "duplicate-value-in-token-list"}, |
| |
| {"description": "valid link rel value 'feed'", |
| "input": "<link rel=feed>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'help'", |
| "input": "<link rel=help>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'tag'", |
| "input": "<link rel=tag>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'sidebar'", |
| "input": "<link rel=sidebar>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'archive'", |
| "input": "<link rel=archive>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'contents'", |
| "input": "<link rel=contents>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'previous'", |
| "input": "<link rel=previous>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'index'", |
| "input": "<link rel=index>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'end'", |
| "input": "<link rel=end>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'copyright'", |
| "input": "<link rel=copyright>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'author'", |
| "input": "<link rel=author>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'top'", |
| "input": "<link rel=top>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'alternate'", |
| "input": "<link rel=alternate>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'next'", |
| "input": "<link rel=next>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'start'", |
| "input": "<link rel=start>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'stylesheet'", |
| "input": "<link rel=stylesheet>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'archives'", |
| "input": "<link rel=archives>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'toc'", |
| "input": "<link rel=toc>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'prev'", |
| "input": "<link rel=prev>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'begin'", |
| "input": "<link rel=begin>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'icon'", |
| "input": "<link rel=icon>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'search'", |
| "input": "<link rel=search>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'last'", |
| "input": "<link rel=last>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'license'", |
| "input": "<link rel=license>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'pingback'", |
| "input": "<link rel=pingback>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'up'", |
| "input": "<link rel=up>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'contact'", |
| "input": "<link rel=contact>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'prefetch'", |
| "input": "<link rel=prefetch>", |
| "fail-if": "invalid-rel"}, |
| |
| {"description": "valid link rel value 'first'", |
| "input": "<link rel=first>", |
| "fail-if": "invalid-rel"} |
| |
| ]} |