X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fsrc%2Ftemplate%2Fadmin-html.js;h=bf44d9fbd6032bc963fd5f67bf3a14585590db1b;hb=f0bf29c75b0fd405ff92fa76f058e61162b87e43;hp=4c9e7a77fecb2f34370475470bf1de6422dbeea4;hpb=b0103b0d496262c438b40bc20304081dbfe41e73;p=squeep-indie-auther diff --git a/test/src/template/admin-html.js b/test/src/template/admin-html.js index 4c9e7a7..bf44d9f 100644 --- a/test/src/template/admin-html.js +++ b/test/src/template/admin-html.js @@ -1,19 +1,23 @@ -/* eslint-env mocha */ +/* eslint-disable sonarjs/no-duplicate-string */ 'use strict'; const assert = require('assert'); const template = require('../../../src/template/admin-html'); const Config = require('../../../config'); const StubLogger = require('../../stub-logger'); -const lint = require('html-minifier-lint').lint; // eslint-disable-line node/no-unpublished-require +const { makeHtmlLint } = require('@squeep/html-template-helper'); +const { HtmlValidate } = require('html-validate'); const stubLogger = new StubLogger(); - -function lintHtml(html) { - const result = lint(html); - stubLogger.debug('validHtml', '', { result, html }); - assert(!result); -} +const htmlValidate = new HtmlValidate({ + extends: [ + 'html-validate:recommended', + ], + rules: { + 'valid-id': ['error', { relaxed: true }], // allow profile uri to be component of id + }, +}); +const lintHtml = makeHtmlLint(stubLogger, htmlValidate); describe('Admin HTML Template', function () { let ctx, config; @@ -90,23 +94,23 @@ describe('Admin HTML Template', function () { }; config = new Config('test'); }); - it('renders', function () { + it('renders', async function () { const result = template(ctx, config); - lintHtml(result); + await lintHtml(result); assert(result); }); - it('renders no tokens', function () { + it('renders no tokens', async function () { ctx.tokens = []; const result = template(ctx, config); - lintHtml(result); + await lintHtml(result); assert(result); }); - it('covers options', function () { + it('covers options', async function () { delete ctx.profilesScopes.profiles; delete ctx.profilesScopes.scopeIndex.scope.profiles; delete ctx.tokens; const result = template(ctx, config); - lintHtml(result); + await lintHtml(result); assert(result); }); }); // Admin HTML Template