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')
13 var pkg = path.resolve(__dirname, 'prune')
14 var cache = path.resolve(pkg, 'cache')
18 description: 'fixture',
31 npm_config_depth: 'Infinity'
34 test('setup', function (t) {
38 path.join(pkg, 'package.json'),
39 JSON.stringify(json, null, 2)
41 mr({ port: common.port }, function (er, s) {
47 test('npm install', function (t) {
51 '--registry', common.registry,
52 '--loglevel', 'silent',
53 '--production', 'false'
54 ], EXEC_OPTS, function (err, code, stdout, stderr) {
55 t.ifErr(err, 'install finished successfully')
56 t.notOk(code, 'exit ok')
57 t.notOk(stderr, 'Should not get data on stderr: ' + stderr)
62 test('npm install test-package', function (t) {
64 'install', 'test-package',
66 '--registry', common.registry,
67 '--loglevel', 'silent',
68 '--production', 'false'
69 ], EXEC_OPTS, function (err, code, stdout, stderr) {
70 t.ifErr(err, 'install finished successfully')
71 t.notOk(code, 'exit ok')
72 t.notOk(stderr, 'Should not get data on stderr: ' + stderr)
77 test('verify installs', function (t) {
78 var dirs = fs.readdirSync(pkg + '/node_modules').sort()
79 t.same(dirs, [ 'test-package', 'mkdirp', 'underscore' ].sort())
83 test('npm prune', function (t) {
86 '--loglevel', 'silent',
87 '--production', 'false'
88 ], EXEC_OPTS, function (err, code, stdout, stderr) {
89 t.ifErr(err, 'prune finished successfully')
90 t.notOk(code, 'exit ok')
91 t.notOk(stderr, 'Should not get data on stderr: ' + stderr)
96 test('verify installs', function (t) {
97 var dirs = fs.readdirSync(pkg + '/node_modules').sort()
98 t.same(dirs, [ 'mkdirp', 'underscore' ])
102 test('npm prune', function (t) {
105 '--loglevel', 'silent',
107 ], EXEC_OPTS, function (err, code, stderr) {
108 t.ifErr(err, 'prune finished successfully')
109 t.notOk(code, 'exit ok')
110 t.equal(stderr, 'unbuild mkdirp@0.3.5\n')
115 test('verify installs', function (t) {
116 var dirs = fs.readdirSync(pkg + '/node_modules').sort()
117 t.same(dirs, [ 'underscore' ])
121 test('cleanup', function (t) {
128 function cleanup () {
129 process.chdir(osenv.tmpdir())