| @@ -0,0 +1,12 @@ | ||
| { | ||
| "author": "Domenic Denicola <domenic@domenicdenicola.com> (http://domenicdenicola.com/)", | ||
| "name": "npm-test-peer-deps-invalid", | ||
| "version": "0.0.0", | ||
| "dependencies": { | ||
| "npm-test-peer-deps-file": "https://raw.github.com/gist/3971128/3f6aa37b4fa1186c2f47da9b77dcc4ec496e3483/index.js", | ||
| "npm-test-peer-deps-file-invalid": "https://gist.github.com/raw/4303335/861f8d3213061826ab31591840c3cb0ac737f4fc/index.js" | ||
| }, | ||
| "scripts": { | ||
| "test": "node test.js" | ||
| } | ||
| } |
| @@ -0,0 +1,31 @@ | ||
| var path = require("path") | ||
| var assert = require("assert") | ||
|
|
||
| process.env.npm_config_prefix = process.cwd() | ||
| delete process.env.npm_config_global | ||
| delete process.env.npm_config_depth | ||
|
|
||
| var npm = process.env.npm_execpath | ||
|
|
||
| require("child_process").exec(npm + " ls --json", { | ||
| env: process.env, cwd: process.cwd() }, | ||
| function (err, stdout, stderr) { | ||
|
|
||
| var actual = JSON.parse(stdout).dependencies | ||
| var expected = require("./npm-ls.json").dependencies | ||
|
|
||
| // Delete the "problems" entry because it contains system-specific path info, | ||
| // so we can't compare it accurately and thus have deleted it from | ||
| // ./npm-ls.json. | ||
| delete actual.dict.problems | ||
|
|
||
| // It's undefined which peerDependency will get installed first, so | ||
| // this will be either version 1.1.0 or version 1.0.0 | ||
| var dictVer = actual.dict.version | ||
| delete actual.dict.version | ||
| assert(dictVer === "1.1.0" || dictVer === "1.0.0") | ||
| assert.deepEqual(actual, expected) | ||
|
|
||
| assert.ok(err) | ||
| assert(/peer invalid/.test(err.message)) | ||
| }) |
| @@ -0,0 +1 @@ | ||
| just an npm test |
| @@ -0,0 +1,18 @@ | ||
| { | ||
| "name": "npm-test-peer-deps", | ||
| "version": "0.0.0", | ||
| "dependencies": { | ||
| "npm-test-peer-deps-file": { | ||
| "version": "1.2.3", | ||
| "from": "https://raw.github.com/gist/3971128/3f6aa37b4fa1186c2f47da9b77dcc4ec496e3483/index.js", | ||
| "dependencies": { | ||
| "opener": { | ||
| "version": "1.3.0" | ||
| } | ||
| } | ||
| }, | ||
| "dict": { | ||
| "version": "1.1.0" | ||
| } | ||
| } | ||
| } |
| @@ -0,0 +1,11 @@ | ||
| { | ||
| "author": "Domenic Denicola <domenic@domenicdenicola.com> (http://domenicdenicola.com/)", | ||
| "name": "npm-test-peer-deps", | ||
| "version": "0.0.0", | ||
| "dependencies": { | ||
| "npm-test-peer-deps-file": "https://raw.github.com/gist/3971128/3f6aa37b4fa1186c2f47da9b77dcc4ec496e3483/index.js" | ||
| }, | ||
| "scripts": { | ||
| "test": "node test.js" | ||
| } | ||
| } |
| @@ -0,0 +1,20 @@ | ||
| var path = require("path") | ||
| var assert = require("assert") | ||
|
|
||
| process.env.npm_config_prefix = process.cwd() | ||
| delete process.env.npm_config_global | ||
| delete process.env.npm_config_depth | ||
|
|
||
| var npm = process.env.npm_execpath | ||
|
|
||
| require("child_process").exec(npm + " ls --json", { | ||
| env: process.env, cwd: process.cwd() }, | ||
| function (err, stdout, stderr) { | ||
|
|
||
| if (err) throw err | ||
|
|
||
| var actual = JSON.parse(stdout).dependencies | ||
| var expected = require("./npm-ls.json").dependencies | ||
|
|
||
| assert.deepEqual(actual, expected) | ||
| }) |