]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/gently-rm-overeager.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / test / tap / gently-rm-overeager.js
1 var resolve = require("path").resolve
2 var fs = require("graceful-fs")
3 var test = require("tap").test
4 var mkdirp = require("mkdirp")
5 var rimraf = require("rimraf")
6
7 var common = require("../common-tap.js")
8
9 var pkg = resolve(__dirname, "gently-rm-overeager")
10 var dep = resolve(__dirname, "test-whoops")
11
12 var EXEC_OPTS = {
13   cwd : pkg
14 }
15
16 var fixture = {
17   name: "@test/whoops",
18   version: "1.0.0",
19   scripts: {
20     postinstall: "echo \"nope\" && exit 1"
21   }
22 }
23
24 test("setup", function (t) {
25   cleanup()
26   setup()
27
28   t.end()
29 })
30
31 test("cache add", function (t) {
32   common.npm(["install", "../test-whoops"], EXEC_OPTS, function (er, c) {
33     t.ifError(er, "test-whoops install didn't explode")
34     t.ok(c, "test-whoops install also failed")
35     fs.readdir(pkg, function (er, files) {
36       t.ifError(er, "package directory is still there")
37       t.deepEqual(files, ["npm-debug.log"], "only debug log remains")
38
39       t.end()
40     })
41   })
42 })
43
44 test("cleanup", function (t) {
45   cleanup()
46
47   t.end()
48 })
49
50
51 function cleanup () {
52   rimraf.sync(pkg)
53   rimraf.sync(dep)
54 }
55
56 function setup () {
57   mkdirp.sync(pkg)
58   // so it doesn't try to install into npm's own node_modules
59   mkdirp.sync(resolve(pkg, "node_modules"))
60   mkdirp.sync(dep)
61   fs.writeFileSync(resolve(dep, "package.json"), JSON.stringify(fixture))
62 }