summaryrefslogtreecommitdiff
path: root/deps/node/deps/npm/test/tap/gently-rm-cmdshims.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/node/deps/npm/test/tap/gently-rm-cmdshims.js')
-rw-r--r--deps/node/deps/npm/test/tap/gently-rm-cmdshims.js160
1 files changed, 0 insertions, 160 deletions
diff --git a/deps/node/deps/npm/test/tap/gently-rm-cmdshims.js b/deps/node/deps/npm/test/tap/gently-rm-cmdshims.js
deleted file mode 100644
index 304c6956..00000000
--- a/deps/node/deps/npm/test/tap/gently-rm-cmdshims.js
+++ /dev/null
@@ -1,160 +0,0 @@
-'use strict'
-/* eslint-disable camelcase */
-var path = require('path')
-var fs = require('graceful-fs')
-var test = require('tap').test
-var mkdirp = require('mkdirp')
-var rimraf = require('rimraf')
-var npm = require('../../lib/npm.js')
-
-var work = path.join(__dirname, path.basename(__filename, '.js'))
-var doremove = path.join(work, 'doremove')
-var dontremove = path.join(work, 'dontremove')
-var example_json = {
- name: 'example',
- version: '1.0.0',
- bin: {
- 'example': 'example.js'
- }
-}
-var example_bin =
- '#!/usr/bin/env node\n' +
- 'true\n'
-
-// NOTE: if this were actually produced on windows it would be \ not / of
-// course, buuut, path.resolve doesn't understand \ outside of windows =/
-var do_example_cmd =
- '@IF EXIST "%~dp0\\node.exe" (\n' +
- ' "%~dp0\\node.exe" "%~dp0\\../example/example.js" %*\n' +
- ') ELSE (\n' +
- ' @SETLOCAL\n' +
- ' @SET PATHEXT=%PATHEXT:;.JS;=;%\n' +
- ' node "%~dp0\\../example/example.js" %*\n' +
- ')\n'
-
-var do_example_cygwin =
- '#!/bin/sh\n' +
- 'basedir=`dirname "$0"`\n' +
- '\n' +
- 'case `uname` in\n' +
- ' *CYGWIN*) basedir=`cygpath -w "$basedir"`;;\n' +
- 'esac\n' +
- '\n' +
- 'if [ -x "$basedir/node" ]; then\n' +
- ' "$basedir/node" "$basedir/../example/example.js" "$@"\n' +
- ' ret=$?\n' +
- 'else\n' +
- ' node "$basedir/../example/example.js" "$@"\n' +
- ' ret=$?\n' +
- 'fi\n' +
- 'exit $ret\n'
-
-var dont_example_cmd =
- '@IF EXIST "%~dp0\\node.exe" (\n' +
- ' "%~dp0\\node.exe" "%~dp0\\../example-other/example.js" %*\n' +
- ') ELSE (\n' +
- ' @SETLOCAL\n' +
- ' @SET PATHEXT=%PATHEXT:;.JS;=;%\n' +
- ' node "%~dp0\\../example-other/example.js" %*\n' +
- ')\n'
-
-var dont_example_cygwin =
- '#!/bin/sh\n' +
- 'basedir=`dirname "$0"`\n' +
- '\n' +
- 'case `uname` in\n' +
- ' *CYGWIN*) basedir=`cygpath -w "$basedir"`;;\n' +
- 'esac\n' +
- '\n' +
- 'if [ -x "$basedir/node" ]; then\n' +
- ' "$basedir/node" "$basedir/../example-other/example.js" "$@"\n' +
- ' ret=$?\n' +
- 'else\n' +
- ' node "$basedir/../example-other/example.js" "$@"\n' +
- ' ret=$?\n' +
- 'fi\n' +
- 'exit $ret\n'
-
-function cleanup () {
- rimraf.sync(work)
-}
-
-var doremove_module = path.join(doremove, 'node_modules', 'example')
-var doremove_example_cmd = path.join(doremove, 'node_modules', '.bin', 'example.cmd')
-var doremove_example_cygwin = path.join(doremove, 'node_modules', '.bin', 'example')
-var dontremove_module = path.join(dontremove, 'node_modules', 'example')
-var dontremove_example_cmd = path.join(dontremove, 'node_modules', '.bin', 'example.cmd')
-var dontremove_example_cygwin = path.join(dontremove, 'node_modules', '.bin', 'example')
-
-function setup () {
- mkdirp.sync(doremove_module)
- mkdirp.sync(path.join(doremove, 'node_modules', '.bin'))
- fs.writeFileSync(path.join(doremove, 'node_modules', 'example', 'package.json'), JSON.stringify(example_json))
- fs.writeFileSync(path.join(doremove, 'node_modules', 'example', 'example.js'), JSON.stringify(example_bin))
- fs.writeFileSync(doremove_example_cmd, do_example_cmd)
- fs.writeFileSync(doremove_example_cygwin, do_example_cygwin)
-
- mkdirp.sync(dontremove_module)
- mkdirp.sync(path.join(dontremove, 'node_modules', '.bin'))
- fs.writeFileSync(path.join(dontremove, 'node_modules', 'example', 'package.json'), JSON.stringify(example_json))
- fs.writeFileSync(path.join(dontremove, 'node_modules', 'example', 'example.js'), JSON.stringify(example_bin))
- fs.writeFileSync(dontremove_example_cmd, dont_example_cmd)
- fs.writeFileSync(dontremove_example_cygwin, dont_example_cygwin)
-}
-
-test('setup', function (t) {
- cleanup()
- setup()
- npm.load({}, function () {
- t.done()
- })
-})
-
-// Like slide.chain, but runs all commands even if they have errors, also
-// throws away results.
-function runAll (cmds, done) {
- runNext()
- function runNext () {
- if (cmds.length === 0) return done()
- var cmdline = cmds.shift()
- var cmd = cmdline.shift()
- cmdline.push(runNext)
- cmd.apply(null, cmdline)
- }
-}
-
-test('remove-cmd-shims', function (t) {
- t.plan(2)
-
- var gentlyRm = require('../../lib/utils/gently-rm.js')
- runAll([ [gentlyRm, doremove_example_cmd, true, doremove_module],
- [gentlyRm, doremove_example_cygwin, true, doremove_module] ],
- function () {
- fs.stat(doremove_example_cmd, function (er) {
- t.is(er && er.code, 'ENOENT', 'cmd-shim was removed')
- })
- fs.stat(doremove_example_cygwin, function (er) {
- t.is(er && er.code, 'ENOENT', 'cmd-shim cygwin script was removed')
- })
- })
-})
-
-test('dont-remove-cmd-shims', function (t) {
- t.plan(2)
- var gentlyRm = require('../../lib/utils/gently-rm.js')
- runAll([ [gentlyRm, dontremove_example_cmd, true, dontremove_module],
- [gentlyRm, dontremove_example_cygwin, true, dontremove_module] ],
- function () {
- fs.stat(dontremove_example_cmd, function (er) {
- t.is(er, null, 'cmd-shim was not removed')
- })
- fs.stat(dontremove_example_cygwin, function (er) {
- t.is(er, null, 'cmd-shim cygwin script was not removed')
- })
- })
-})
-
-test('cleanup', function (t) {
- cleanup()
- t.done()
-})