summaryrefslogtreecommitdiff
path: root/tools/doc/addon-verify.js
diff options
context:
space:
mode:
authorRod Vagg <rod@vagg.org>2015-12-24 13:56:03 +1100
committerRod Vagg <rod@vagg.org>2016-01-14 22:04:05 +1100
commit3727ae0d7dc940ee3b2bc238fc80cd3605954715 (patch)
treecc407c1b245902969b0ab74674970f993e73db0b /tools/doc/addon-verify.js
parent9571be12f6e6ebdd097c8a032a872bada9972d56 (diff)
downloadandroid-node-v8-3727ae0d7dc940ee3b2bc238fc80cd3605954715.tar.gz
android-node-v8-3727ae0d7dc940ee3b2bc238fc80cd3605954715.tar.bz2
android-node-v8-3727ae0d7dc940ee3b2bc238fc80cd3605954715.zip
test: use addon.md block headings as test dir names
instead of doc-* PR-URL: https://github.com/nodejs/node/pull/4412 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
Diffstat (limited to 'tools/doc/addon-verify.js')
-rw-r--r--tools/doc/addon-verify.js34
1 files changed, 20 insertions, 14 deletions
diff --git a/tools/doc/addon-verify.js b/tools/doc/addon-verify.js
index cc80a7bd32..68c46f06bc 100644
--- a/tools/doc/addon-verify.js
+++ b/tools/doc/addon-verify.js
@@ -1,31 +1,36 @@
-var fs = require('fs');
-var path = require('path');
-var marked = require('marked');
+'use strict';
-var doc = path.resolve(__dirname, '..', '..', 'doc', 'api', 'addons.markdown');
-var verifyDir = path.resolve(__dirname, '..', '..', 'test', 'addons');
+const fs = require('fs');
+const path = require('path');
+const marked = require('marked');
-var contents = fs.readFileSync(doc).toString();
+const doc = path.resolve(__dirname, '..', '..', 'doc', 'api', 'addons.markdown');
+const verifyDir = path.resolve(__dirname, '..', '..', 'test', 'addons');
-var tokens = marked.lexer(contents, {});
-var files = null;
-var id = 0;
+const contents = fs.readFileSync(doc).toString();
+
+let tokens = marked.lexer(contents, {});
+let files = null;
+let blockName;
+let id = 0;
// Just to make sure that all examples will be processed
tokens.push({ type: 'heading' });
var oldDirs = fs.readdirSync(verifyDir);
oldDirs = oldDirs.filter(function(dir) {
- return /^doc-/.test(dir);
+ return /^\d{2}_/.test(dir);
}).map(function(dir) {
return path.resolve(verifyDir, dir);
});
for (var i = 0; i < tokens.length; i++) {
var token = tokens[i];
- if (token.type === 'heading') {
+ if (token.type === 'heading' && token.text) {
+ blockName = token.text
if (files && Object.keys(files).length !== 0) {
verifyFiles(files,
+ blockName,
console.log.bind(null, 'wrote'),
function(err) { if (err) throw err; });
}
@@ -48,15 +53,16 @@ function once(fn) {
};
}
-function verifyFiles(files, onprogress, ondone) {
- var dir = path.resolve(verifyDir, 'doc-' + id++);
-
+function verifyFiles(files, blockName, onprogress, ondone) {
// must have a .cc and a .js to be a valid test
if (!Object.keys(files).some((name) => /\.cc$/.test(name)) ||
!Object.keys(files).some((name) => /\.js$/.test(name))) {
return;
}
+ blockName = blockName.toLowerCase().replace(/\s/g, '_').replace(/[^a-z\d_]/g, '')
+ let dir = path.resolve(verifyDir, `${(++id < 10 ? '0' : '') + id}_${blockName}`);
+
files = Object.keys(files).map(function(name) {
return {
path: path.resolve(dir, name),