The data contained in this repository can be downloaded to your computer using one of several clients.
Please see the documentation of your version control software client for more information.
Please select the desired protocol below to get the URL.
This URL has Read-Only access.
main_repo / deps / npm / test / packages / npm-test-shrinkwrap / test.js @ 5aef65a9
History | View | Annotate | Download (922 Bytes)
1 |
var path = require("path") |
---|---|
2 |
var assert = require("assert") |
3 |
|
4 |
process.env.npm_config_prefix = process.cwd() |
5 |
delete process.env.npm_config_global
|
6 |
delete process.env.npm_config_depth
|
7 |
|
8 |
var npm = process.env.npm_execpath
|
9 |
|
10 |
require("child_process").execFile(process.execPath, [npm, "ls", "--json"], { |
11 |
stdio: "pipe", env: process.env, cwd: process.cwd() }, |
12 |
function (err, stdout, stderr) {
|
13 |
if (err) throw err |
14 |
|
15 |
var actual = JSON.parse(stdout)
|
16 |
var expected = require("./npm-shrinkwrap.json") |
17 |
rmFrom(actual) |
18 |
actual = actual.dependencies |
19 |
rmFrom(expected) |
20 |
expected = expected.dependencies |
21 |
console.error(JSON.stringify(actual, null, 2)) |
22 |
console.error(JSON.stringify(expected, null, 2)) |
23 |
|
24 |
assert.deepEqual(actual, expected) |
25 |
}) |
26 |
|
27 |
function rmFrom (obj) { |
28 |
for (var i in obj) { |
29 |
if (i === "from") |
30 |
delete obj[i]
|
31 |
else if (i === "dependencies") |
32 |
for (var j in obj[i]) |
33 |
rmFrom(obj[i][j]) |
34 |
} |
35 |
} |