X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=test%2Fsrc%2Ftemplate%2Fadmin-html.js;h=0512807354afd0e1c37d9e959b273bce0d58dbd0;hb=3e0cafbdab72c337da5a146d13c591071f414eed;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..0512807 100644 --- a/test/src/template/admin-html.js +++ b/test/src/template/admin-html.js @@ -1,19 +1,22 @@ -/* eslint-env mocha */ '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 +93,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