diff options
author | XhmikosR <xhmikosr@gmail.com> | 2019-08-19 14:23:45 +0300 |
---|---|---|
committer | XhmikosR <xhmikosr@gmail.com> | 2019-08-24 03:06:19 +0300 |
commit | 4a3f43475b2bc1e7710eb9699ea46ceaadbabf2f (patch) | |
tree | 5eaad712763374e9fb940266fa484f459c4ffaf4 /build | |
parent | 99066fe32c8e561aeb147659192d93b16fd6897c (diff) |
Add tests.
* find-unused-sass-variables for finding unused Sass variables
* stylelint for Sass linting
* linkinator for broken links
* vnu-jar for HTML validation
Diffstat (limited to 'build')
-rw-r--r-- | build/vnu-jar.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/build/vnu-jar.js b/build/vnu-jar.js new file mode 100644 index 000000000..d343fc7cc --- /dev/null +++ b/build/vnu-jar.js @@ -0,0 +1,51 @@ +#!/usr/bin/env node + +/*! + * Script to run vnu-jar if Java is available. + * Copyright 2017-2019 The Bootstrap Authors + * Copyright 2017-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +'use strict' + +const childProcess = require('child_process') +const vnu = require('vnu-jar') + +childProcess.exec('java -version', (error, stdout, stderr) => { + if (error) { + console.error('Skipping vnu-jar test; Java is missing.') + return + } + + const is32bitJava = !stderr.match(/64-Bit/) + + // vnu-jar accepts multiple ignores joined with a `|`. + // Also note that the ignores are regular expressions. + const ignores = [ + // IE11 doesn't recognize <main> / give the element an implicit "main" landmark. + // Explicit role="main" is redundant for other modern browsers, but still valid. + 'The “main” role is unnecessary for element “main”.' + ].join('|') + + const args = [ + '-jar', + vnu, + '--asciiquotes', + '--skip-non-html', + '--Werror', + `--filterpattern "${ignores}"`, + '_site/' + ] + + // For the 32-bit Java we need to pass `-Xss512k` + if (is32bitJava) { + args.splice(0, 0, '-Xss512k') + } + + return childProcess.spawn('java', args, { + shell: true, + stdio: 'inherit' + }) + .on('exit', process.exit) +}) |