]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/404-parent.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / test / tap / 404-parent.js
1 var common = require("../common-tap.js")
2 var test = require("tap").test
3 var npm = require("../../")
4 var osenv = require("osenv")
5 var path = require("path")
6 var fs = require("fs")
7 var rimraf = require("rimraf")
8 var mkdirp = require("mkdirp")
9 var pkg = path.resolve(__dirname, "404-parent")
10 var mr = require("npm-registry-mock")
11
12 test("404-parent: if parent exists, specify parent in error message", function (t) {
13   setup()
14   rimraf.sync(path.resolve(pkg, "node_modules"))
15   performInstall(function (err) {
16     t.ok(err instanceof Error, "error was returned")
17     t.ok(err.parent === "404-parent-test", "error's parent set")
18     t.end()
19   })
20 })
21
22 test("cleanup", function (t) {
23   process.chdir(osenv.tmpdir())
24   rimraf.sync(pkg)
25   t.end()
26 })
27
28 function setup() {
29   mkdirp.sync(pkg)
30   mkdirp.sync(path.resolve(pkg, "cache"))
31   fs.writeFileSync(path.resolve(pkg, "package.json"), JSON.stringify({
32     author: "Evan Lucas",
33     name: "404-parent-test",
34     version: "0.0.0",
35     description: "Test for 404-parent",
36     dependencies: {
37       "test-npm-404-parent-test": "*"
38     }
39   }), "utf8")
40   process.chdir(pkg)
41 }
42
43 function plugin (server) {
44   server.get("/test-npm-404-parent-test")
45     .reply(404, {"error": "version not found"})
46 }
47
48 function performInstall (cb) {
49   mr({port : common.port, plugin : plugin}, function (er, s) { // create mock registry.
50     npm.load({registry: common.registry}, function () {
51       npm.commands.install(pkg, [], function (err) {
52         cb(err)
53         s.close() // shutdown mock npm server.
54       })
55     })
56   })
57 }