]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/read-installed/test/linked-dep-dev-deps-extraneous.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / node_modules / read-installed / test / linked-dep-dev-deps-extraneous.js
1 var test = require('tap').test
2 var path = require('path')
3 var fs = require('fs')
4 var mkdirp = require('mkdirp')
5 var rimraf = require('rimraf')
6 var readInstalled = require('../')
7
8 var root = path.resolve(__dirname, 'root')
9 var pkg = path.resolve(root, 'pkg')
10 var pkgnm = path.resolve(pkg, 'node_modules')
11 var linkdepSrc = path.resolve(root, 'linkdep')
12 var linkdepLink = path.resolve(pkgnm, 'linkdep')
13 var devdep = path.resolve(linkdepSrc, 'node_modules', 'devdep')
14
15 function pjson (dir, data) {
16   mkdirp.sync(dir)
17   var d = path.resolve(dir, 'package.json')
18   fs.writeFileSync(d, JSON.stringify(data))
19 }
20
21 test('setup', function (t) {
22   rimraf.sync(root)
23   pjson(pkg, {
24     name: 'root',
25     version: '1.2.3',
26     dependencies: {
27       linkdep: ''
28     }
29   })
30   pjson(linkdepSrc, {
31     name: 'linkdep',
32     version: '1.2.3',
33     devDependencies: {
34       devdep: ''
35     }
36   })
37   pjson(devdep, {
38     name: 'devdep',
39     version: '1.2.3'
40   })
41
42   mkdirp.sync(pkgnm)
43   fs.symlinkSync(linkdepSrc, linkdepLink, 'dir')
44
45   t.end()
46 })
47
48 test('basic', function (t) {
49   readInstalled(pkg, { dev: true }, function (er, data) {
50     var dd = data.dependencies.linkdep.dependencies.devdep
51     t.notOk(dd.extraneous, 'linked dev dep should not be extraneous')
52     t.end()
53   })
54 })
55
56 test('cleanup', function (t) {
57   rimraf.sync(root)
58   t.end()
59 })