2 var path = require('path')
4 var mkdirp = require('mkdirp')
5 var mr = require('npm-registry-mock')
6 var osenv = require('osenv')
7 var rimraf = require('rimraf')
8 var test = require('tap').test
10 var common = require('../common-tap.js')
11 var npm = npm = require('../../')
13 var pkg = path.resolve(__dirname, 'shrinkwrap-dev-dependency')
15 test("shrinkwrap doesn't strip out the dependency", function (t) {
18 mr({port: common.port}, function (er, s) {
19 setup(function (err) {
20 if (err) return t.fail(err)
22 npm.install('.', function (err) {
23 if (err) return t.fail(err)
25 npm.commands.shrinkwrap([], true, function (err, results) {
26 if (err) return t.fail(err)
28 t.deepEqual(results, desired)
37 test('cleanup', function (t) {
43 name: 'npm-test-shrinkwrap-dev-dependency',
48 from: 'request@0.9.0',
49 resolved: common.registry + '/request/-/request-0.9.0.tgz'
53 from: 'underscore@1.3.1',
54 resolved: common.registry + '/underscore/-/underscore-1.3.1.tgz'
60 author: 'Domenic Denicola',
61 name: 'npm-test-shrinkwrap-dev-dependency',
75 fs.writeFileSync(path.join(pkg, 'package.json'), JSON.stringify(json, null, 2))
79 cache: path.resolve(pkg, 'cache'),
80 registry: common.registry,
81 // important to make sure devDependencies don't get stripped
88 process.chdir(osenv.tmpdir())