diff options
-rw-r--r-- | __tests__/index.js | 13 | ||||
-rw-r--r-- | index.js | 2 |
2 files changed, 7 insertions, 8 deletions
diff --git a/__tests__/index.js b/__tests__/index.js index 199b8e4..7476477 100644 --- a/__tests__/index.js +++ b/__tests__/index.js @@ -43,13 +43,6 @@ const generateExtendParser = extendsOptions => text => unified() const parse = x => parse5.parse(x); -/* - * TODO : - * - Invalid scope - * - Invalid extended - * - aria attributes - */ - const mainTestString = `Inline *test*{style="em:4"} paragraph. Use **multiple**{ style="color:pink"} inline ~~block~~ tag. Line \`tagCode\`{ style="color:yellow"}.`; test('basic-default', t => { @@ -148,3 +141,9 @@ test('invalid-extend', t => { t.deepEqual(parse(contents), parse(`<p> <em>Wait</em> ! I <strong style="color: red;">love</strong> you!</p>`)); }); +test('global-aria', t => { + const invalidString = ` *Wait* ! I **love**{ style="color: pink;" aria-love="true" } you!`; + const {contents} = renderDefault(invalidString); + t.deepEqual(parse(contents), parse(`<p> <em>Wait</em> ! I <strong style="color: pink;" aria-love="true">love</strong> you!</p>`)); +}); + @@ -131,7 +131,7 @@ function filterAttributes(prop, config, type) { const isDangerous = p => DOMEventHandler.indexOf(p) >= 0; const isSpecific = p => type in specific && specific[type].indexOf(p) >= 0; - const isGlobal = p => htmlElemAttr['*'].indexOf(p) >= 0; + const isGlobal = p => htmlElemAttr['*'].indexOf(p) >= 0 || p.match(/^aria-[a-z]{3,24}$/); let inScope = _ => false; |