From ba673ff4c1959d7e91c20b149a9ecf63b717fce1 Mon Sep 17 00:00:00 2001 From: Jeff Williams Date: Wed, 25 Nov 2015 16:03:45 -0800 Subject: [PATCH] cleanup --- lib/jsdoc/fs.js | 63 ++++++++++++++++++++++++++--- lib/jsdoc/path.js | 1 - lib/jsdoc/src/parser.js | 3 +- lib/jsdoc/util/logger.js | 1 - node/fs.js | 63 ----------------------------- test/jasmine-jsdoc.js | 15 +++---- test/specs/documentation/modules.js | 1 - test/specs/jsdoc/src/handlers.js | 3 +- test/specs/jsdoc/src/parser.js | 5 +-- test/specs/tags/overviewtag.js | 1 - 10 files changed, 67 insertions(+), 89 deletions(-) delete mode 100644 node/fs.js diff --git a/lib/jsdoc/fs.js b/lib/jsdoc/fs.js index 4bb8966e..08f6a9c6 100644 --- a/lib/jsdoc/fs.js +++ b/lib/jsdoc/fs.js @@ -6,7 +6,8 @@ var fs = require('fs'); var path = require('path'); -var runtime = require('jsdoc/util/runtime'); +var stream = require('stream'); +var wrench = require('wrench'); var ls = exports.ls = function(dir, recurse, _allFiles, _path) { var file; @@ -66,9 +67,59 @@ var ls = exports.ls = function(dir, recurse, _allFiles, _path) { return _allFiles; }; -// export the VM-specific implementations of the extra methods -// TODO: document extra methods here -var extras = require( runtime.getModulePath('fs') ); -Object.keys(extras).forEach(function(extra) { - exports[extra] = extras[extra]; +var toDir = exports.toDir = function(_path) { + var isDirectory; + + _path = path.normalize(_path); + + try { + isDirectory = fs.statSync(_path).isDirectory(); + } + catch (e) { + isDirectory = false; + } + + if (isDirectory) { + return _path; + } else { + return path.dirname(_path); + } +}; + +exports.mkPath = function(_path) { + if ( Array.isArray(_path) ) { + _path = _path.join(''); + } + + wrench.mkdirSyncRecursive(_path); +}; + +// adapted from http://procbits.com/2011/11/15/synchronous-file-copy-in-node-js +exports.copyFileSync = function(inFile, outDir, fileName) { + var BUF_LENGTH = 64 * 1024; + + var read; + var write; + + var buffer = new Buffer(BUF_LENGTH); + var bytesRead = 1; + var outFile = path.join( outDir, fileName || path.basename(inFile) ); + var pos = 0; + + wrench.mkdirSyncRecursive(outDir); + read = fs.openSync(inFile, 'r'); + write = fs.openSync(outFile, 'w'); + + while (bytesRead > 0) { + bytesRead = fs.readSync(read, buffer, 0, BUF_LENGTH, pos); + fs.writeSync(write, buffer, 0, bytesRead); + pos += bytesRead; + } + + fs.closeSync(read); + return fs.closeSync(write); +}; + +Object.keys(fs).forEach(function(member) { + exports[member] = fs[member]; }); diff --git a/lib/jsdoc/path.js b/lib/jsdoc/path.js index 42a27adf..ebfffd6f 100644 --- a/lib/jsdoc/path.js +++ b/lib/jsdoc/path.js @@ -7,7 +7,6 @@ var env = require('jsdoc/env'); var fs = require('fs'); var path = require('path'); -var runtime = require('jsdoc/util/runtime'); function prefixReducer(previousPath, current) { var currentPath = []; diff --git a/lib/jsdoc/src/parser.js b/lib/jsdoc/src/parser.js index 6e4f7817..ab44f77b 100644 --- a/lib/jsdoc/src/parser.js +++ b/lib/jsdoc/src/parser.js @@ -14,8 +14,7 @@ var jsdoc = { syntax: require('jsdoc/src/syntax') }, util: { - doop: require('jsdoc/util/doop'), - runtime: require('jsdoc/util/runtime') + doop: require('jsdoc/util/doop') } }; var logger = require('jsdoc/util/logger'); diff --git a/lib/jsdoc/util/logger.js b/lib/jsdoc/util/logger.js index 8d2976ad..994d3499 100644 --- a/lib/jsdoc/util/logger.js +++ b/lib/jsdoc/util/logger.js @@ -35,7 +35,6 @@ */ 'use strict'; -var runtime = require('jsdoc/util/runtime'); var util = require('util'); function Logger() {} diff --git a/node/fs.js b/node/fs.js deleted file mode 100644 index 935da9d7..00000000 --- a/node/fs.js +++ /dev/null @@ -1,63 +0,0 @@ -'use strict'; - -var fs = require('fs'); -var path = require('path'); -var stream = require('stream'); -var wrench = require('wrench'); - -var toDir = exports.toDir = function(_path) { - var isDirectory; - - _path = path.normalize(_path); - - try { - isDirectory = fs.statSync(_path).isDirectory(); - } - catch (e) { - isDirectory = false; - } - - if (isDirectory) { - return _path; - } else { - return path.dirname(_path); - } -}; - -exports.mkPath = function(/**Array*/ _path) { - if ( Array.isArray(_path) ) { - _path = _path.join(''); - } - - wrench.mkdirSyncRecursive(_path); -}; - -// adapted from http://procbits.com/2011/11/15/synchronous-file-copy-in-node-js -exports.copyFileSync = function(inFile, outDir, fileName) { - var BUF_LENGTH = 64 * 1024; - - var read; - var write; - - var buffer = new Buffer(BUF_LENGTH); - var bytesRead = 1; - var outFile = path.join( outDir, fileName || path.basename(inFile) ); - var pos = 0; - - wrench.mkdirSyncRecursive(outDir); - read = fs.openSync(inFile, 'r'); - write = fs.openSync(outFile, 'w'); - - while (bytesRead > 0) { - bytesRead = fs.readSync(read, buffer, 0, BUF_LENGTH, pos); - fs.writeSync(write, buffer, 0, bytesRead); - pos += bytesRead; - } - - fs.closeSync(read); - return fs.closeSync(write); -}; - -Object.keys(fs).forEach(function(key) { - exports[key] = fs[key]; -}); diff --git a/test/jasmine-jsdoc.js b/test/jasmine-jsdoc.js index 01480944..f18b393b 100644 --- a/test/jasmine-jsdoc.js +++ b/test/jasmine-jsdoc.js @@ -1,4 +1,4 @@ -/*global expect, jasmine: true, runs, waits */ +/* global expect, jasmine: true, runs, waits */ 'use strict'; var fs = require('jsdoc/fs'); @@ -13,9 +13,6 @@ var jsdoc = { src: { handlers: require('jsdoc/src/handlers'), parser: require('jsdoc/src/parser') - }, - util: { - runtime: require('jsdoc/util/runtime') } }; @@ -111,9 +108,9 @@ jasmine.executeSpecsInFolder = function(folder, done, opts) { // Add the specs to the context for (var i = 0, len = specsList.length; i < len; ++i) { filename = specsList[i]; - require(filename.path().replace(/\\/g, '/'). - replace(new RegExp('^' + jsdoc.env.dirname + '/test'), './'). - replace(/\.\w+$/, '')); + require(filename.path().replace(/\\/g, '/') + .replace(new RegExp('^' + jsdoc.env.dirname + '/test'), './') + .replace(/\.\w+$/, '')); } // Run Jasmine @@ -155,9 +152,9 @@ jasmine.getDocSetFromFile = function(filename, parser, validate, augment) { jsdoc.src.handlers.attachTo(testParser); - /*eslint-disable no-script-url */ + /* eslint-disable no-script-url */ doclets = testParser.parse('javascript:' + sourceCode); - /*eslint-enable no-script-url */ + /* eslint-enable no-script-url */ jsdoc.borrow.indexAll(doclets); if (augment !== false) { diff --git a/test/specs/documentation/modules.js b/test/specs/documentation/modules.js index b7739e25..1d5305f7 100644 --- a/test/specs/documentation/modules.js +++ b/test/specs/documentation/modules.js @@ -3,7 +3,6 @@ describe('module names', function() { var env = require('jsdoc/env'); var path = require('jsdoc/path'); - var runtime = require('jsdoc/util/runtime'); var doclets; diff --git a/test/specs/jsdoc/src/handlers.js b/test/specs/jsdoc/src/handlers.js index 22b3d8d1..d852f5e4 100644 --- a/test/specs/jsdoc/src/handlers.js +++ b/test/specs/jsdoc/src/handlers.js @@ -2,7 +2,6 @@ describe('jsdoc/src/handlers', function() { var handlers = require('jsdoc/src/handlers'); - var runtime = require('jsdoc/util/runtime'); var testParser = jasmine.createParser(); handlers.attachTo(testParser); @@ -41,7 +40,7 @@ describe('jsdoc/src/handlers', function() { }); describe('jsdocCommentFound handler', function() { - /*eslint no-script-url: 0 */ + /* eslint no-script-url: 0 */ var sourceCode = 'javascript:/** @name bar */'; var result = testParser.parse(sourceCode); diff --git a/test/specs/jsdoc/src/parser.js b/test/specs/jsdoc/src/parser.js index db47f7ae..876358d8 100644 --- a/test/specs/jsdoc/src/parser.js +++ b/test/specs/jsdoc/src/parser.js @@ -1,4 +1,4 @@ -/*eslint no-script-url: 0 */ +/* eslint no-script-url: 0 */ 'use strict'; describe('jsdoc/src/parser', function() { @@ -10,8 +10,7 @@ describe('jsdoc/src/parser', function() { parser: require('jsdoc/src/parser') }, util: { - logger: require('jsdoc/util/logger'), - runtime: require('jsdoc/util/runtime') + logger: require('jsdoc/util/logger') } }; var path = require('jsdoc/path'); diff --git a/test/specs/tags/overviewtag.js b/test/specs/tags/overviewtag.js index 2ca29abf..8c947279 100644 --- a/test/specs/tags/overviewtag.js +++ b/test/specs/tags/overviewtag.js @@ -3,7 +3,6 @@ describe('@overview tag', function() { var env = require('jsdoc/env'); var path = require('jsdoc/path'); - var runtime = require('jsdoc/util/runtime'); var doclets;