summaryrefslogtreecommitdiff
path: root/deps/npm/test
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/test')
-rw-r--r--deps/npm/test/packages/npm-test-peer-deps-invalid/README1
-rw-r--r--deps/npm/test/packages/npm-test-peer-deps-invalid/npm-ls.json21
-rw-r--r--deps/npm/test/packages/npm-test-peer-deps-invalid/test.js34
-rw-r--r--deps/npm/test/packages/npm-test-peer-deps/test.js7
-rw-r--r--deps/npm/test/packages/npm-test-shrinkwrap/test.js2
-rw-r--r--deps/npm/test/tap/false_name.js9
-rw-r--r--deps/npm/test/tap/package-with-peer-dep/package.json7
-rw-r--r--deps/npm/test/tap/peer-deps-invalid.js24
-rw-r--r--deps/npm/test/tap/peer-deps-invalid/package.json (renamed from deps/npm/test/packages/npm-test-peer-deps-invalid/package.json)5
-rw-r--r--deps/npm/test/tap/peer-deps-without-package-json.js29
-rw-r--r--deps/npm/test/tap/peer-deps-without-package-json/.gitkeep0
11 files changed, 72 insertions, 67 deletions
diff --git a/deps/npm/test/packages/npm-test-peer-deps-invalid/README b/deps/npm/test/packages/npm-test-peer-deps-invalid/README
deleted file mode 100644
index 8848f07868..0000000000
--- a/deps/npm/test/packages/npm-test-peer-deps-invalid/README
+++ /dev/null
@@ -1 +0,0 @@
-just an npm test
diff --git a/deps/npm/test/packages/npm-test-peer-deps-invalid/npm-ls.json b/deps/npm/test/packages/npm-test-peer-deps-invalid/npm-ls.json
deleted file mode 100644
index 285bce7d20..0000000000
--- a/deps/npm/test/packages/npm-test-peer-deps-invalid/npm-ls.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "npm-test-peer-deps-file": {
- "version": "1.2.3",
- "from": "https://raw.github.com/gist/3971128/3f6aa37b4fa1186c2f47da9b77dcc4ec496e3483/index.js",
- "resolved": "https://raw.github.com/gist/3971128/3f6aa37b4fa1186c2f47da9b77dcc4ec496e3483/index.js",
- "dependencies": {
- "opener": {
- "version": "1.3.0",
- "from": "opener@1.3.0"
- }
- }
- },
- "npm-test-peer-deps-file-invalid": {
- "version": "1.2.3",
- "from": "https://gist.github.com/raw/4303335/861f8d3213061826ab31591840c3cb0ac737f4fc/index.js",
- "resolved": "https://gist.github.com/raw/4303335/861f8d3213061826ab31591840c3cb0ac737f4fc/index.js"
- },
- "dict": {
- "peerInvalid": true
- }
-}
diff --git a/deps/npm/test/packages/npm-test-peer-deps-invalid/test.js b/deps/npm/test/packages/npm-test-peer-deps-invalid/test.js
deleted file mode 100644
index 70462641f3..0000000000
--- a/deps/npm/test/packages/npm-test-peer-deps-invalid/test.js
+++ /dev/null
@@ -1,34 +0,0 @@
-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")
-
- // 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
- delete actual.dict.from
- delete actual.dict.resolved
- assert(dictVer === "1.1.0" || dictVer === "1.0.0")
- console.error(JSON.stringify(actual, null, 2))
- assert.deepEqual(actual, expected)
-
- assert.ok(err)
- assert(/peer invalid/.test(err.message))
-})
diff --git a/deps/npm/test/packages/npm-test-peer-deps/test.js b/deps/npm/test/packages/npm-test-peer-deps/test.js
index 98dbf5f5a4..519528a0e0 100644
--- a/deps/npm/test/packages/npm-test-peer-deps/test.js
+++ b/deps/npm/test/packages/npm-test-peer-deps/test.js
@@ -7,7 +7,7 @@ delete process.env.npm_config_depth
var npm = process.env.npm_execpath
-require("child_process").exec(npm + " ls --json", {
+require("child_process").execFile(process.execPath, [npm, "ls", "--json"], {
env: process.env, cwd: process.cwd() },
function (err, stdout, stderr) {
@@ -15,6 +15,11 @@ require("child_process").exec(npm + " ls --json", {
var actual = JSON.parse(stdout).dependencies
var expected = require("./npm-ls.json")
+
+ // resolved url doesn't matter
+ delete actual.dict.resolved
+ delete expected.dict.resolved
+
console.error(JSON.stringify(actual, null, 2))
console.error(JSON.stringify(expected, null, 2))
diff --git a/deps/npm/test/packages/npm-test-shrinkwrap/test.js b/deps/npm/test/packages/npm-test-shrinkwrap/test.js
index f3fe8a4e81..fba90ec651 100644
--- a/deps/npm/test/packages/npm-test-shrinkwrap/test.js
+++ b/deps/npm/test/packages/npm-test-shrinkwrap/test.js
@@ -7,7 +7,7 @@ delete process.env.npm_config_depth
var npm = process.env.npm_execpath
-require("child_process").exec(npm + " ls --json", {
+require("child_process").execFile(process.execPath, [npm, "ls", "--json"], {
stdio: "pipe", env: process.env, cwd: process.cwd() },
function (err, stdout, stderr) {
if (err) throw err
diff --git a/deps/npm/test/tap/false_name.js b/deps/npm/test/tap/false_name.js
index 0ccf8fceab..968b6e74b1 100644
--- a/deps/npm/test/tap/false_name.js
+++ b/deps/npm/test/tap/false_name.js
@@ -4,6 +4,7 @@ var test = require("tap").test
, existsSync = fs.existsSync || path.existsSync
, spawn = require("child_process").spawn
, npm = require("../../")
+ , rimraf = require("rimraf")
test("not every pkg.name can be required", function (t) {
t.plan(1)
@@ -20,10 +21,8 @@ test("not every pkg.name can be required", function (t) {
function setup (cb) {
process.chdir(__dirname + "/false_name")
npm.load(function () {
- spawn("rm", [ "-rf", __dirname + "/false_name/node_modules" ])
- .on("exit", function () {
- fs.mkdirSync(__dirname + "/false_name/node_modules")
- cb()
- })
+ rimraf.sync(__dirname + "/false_name/node_modules")
+ fs.mkdirSync(__dirname + "/false_name/node_modules")
+ cb()
})
}
diff --git a/deps/npm/test/tap/package-with-peer-dep/package.json b/deps/npm/test/tap/package-with-peer-dep/package.json
new file mode 100644
index 0000000000..99cc75bb85
--- /dev/null
+++ b/deps/npm/test/tap/package-with-peer-dep/package.json
@@ -0,0 +1,7 @@
+{
+ "name": "package-with-peer-dep",
+ "version": "0.0.0",
+ "peerDependencies": {
+ "opener": "*"
+ }
+}
diff --git a/deps/npm/test/tap/peer-deps-invalid.js b/deps/npm/test/tap/peer-deps-invalid.js
new file mode 100644
index 0000000000..44b9367666
--- /dev/null
+++ b/deps/npm/test/tap/peer-deps-invalid.js
@@ -0,0 +1,24 @@
+var fs = require("fs")
+var test = require("tap").test
+var rimraf = require("rimraf")
+var npm = require("../../")
+
+test("installing dependencies that having conflicting peerDependencies", function (t) {
+ t.plan(1)
+
+ rimraf.sync(__dirname + "/peer-deps-invalid/node_modules")
+ process.chdir(__dirname + "/peer-deps-invalid")
+
+ npm.load(function () {
+ npm.commands.install([], function (err) {
+ if (!err) {
+ t.fail("No error!")
+ process.exit(1)
+ return
+ }
+
+ t.equal(err.code, "EPEERINVALID")
+ process.exit(0)
+ })
+ })
+})
diff --git a/deps/npm/test/packages/npm-test-peer-deps-invalid/package.json b/deps/npm/test/tap/peer-deps-invalid/package.json
index 2fd61047a4..766f1f53d6 100644
--- a/deps/npm/test/packages/npm-test-peer-deps-invalid/package.json
+++ b/deps/npm/test/tap/peer-deps-invalid/package.json
@@ -1,12 +1,9 @@
{
"author": "Domenic Denicola <domenic@domenicdenicola.com> (http://domenicdenicola.com/)",
- "name": "npm-test-peer-deps-invalid",
+ "name": "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"
}
}
diff --git a/deps/npm/test/tap/peer-deps-without-package-json.js b/deps/npm/test/tap/peer-deps-without-package-json.js
new file mode 100644
index 0000000000..19b6064038
--- /dev/null
+++ b/deps/npm/test/tap/peer-deps-without-package-json.js
@@ -0,0 +1,29 @@
+var fs = require("fs")
+var test = require("tap").test
+var rimraf = require("rimraf")
+var npm = require("../../")
+
+var peerDepsTestUrl = "https://gist.github.com/raw/3971128/3f6aa37b4fa1186c2f47da9b77dcc4ec496e3483/index.js"
+
+test("installing a peerDependencies-using package without a package.json present (GH-3049)", function (t) {
+
+ rimraf.sync(__dirname + "/peer-deps-without-package-json/node_modules")
+ fs.mkdirSync(__dirname + "/peer-deps-without-package-json/node_modules")
+ process.chdir(__dirname + "/peer-deps-without-package-json")
+
+ npm.load(function () {
+ npm.install(peerDepsTestUrl, function (err) {
+ if (err) {
+ t.fail(err)
+ t.end()
+ process.exit(1)
+ return
+ }
+
+ t.ok(fs.existsSync(__dirname + "/peer-deps-without-package-json/node_modules/npm-test-peer-deps-file"))
+ t.ok(fs.existsSync(__dirname + "/peer-deps-without-package-json/node_modules/dict"))
+ t.end()
+ process.exit(0)
+ })
+ })
+})
diff --git a/deps/npm/test/tap/peer-deps-without-package-json/.gitkeep b/deps/npm/test/tap/peer-deps-without-package-json/.gitkeep
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/deps/npm/test/tap/peer-deps-without-package-json/.gitkeep