]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/install-man.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / test / tap / install-man.js
1 var fs = require("fs")
2 var resolve = require("path").resolve
3
4 var osenv = require("osenv")
5 var mkdirp = require("mkdirp")
6 var rimraf = require("rimraf")
7 var test = require("tap").test
8
9 var common = require("../common-tap.js")
10
11 var pkg = resolve(__dirname, "install-man")
12 var target = resolve(__dirname, "install-man-target")
13
14 var EXEC_OPTS = {
15   cwd: target
16 }
17
18 var json = {
19   name    : "install-man",
20   version : "1.2.3",
21   man     : [ "./install-man.1" ]
22 }
23
24 test("setup", function (t) {
25   setup()
26   t.pass("setup ran")
27   t.end()
28 })
29
30 test("install man page", function (t) {
31   common.npm(
32     [
33       "install",
34       "--prefix", target,
35       "--global",
36       pkg
37     ],
38     EXEC_OPTS,
39     function (err, code, stdout, stderr) {
40       t.ifError(err, "npm command ran from test")
41       t.equals(code, 0, "install exited with success (0)")
42       t.ok(stdout, "output indicating success")
43       t.ok(
44         fs.existsSync(resolve(target, "share", "man", "man1", "install-man.1")),
45         "man page link was created"
46       )
47
48       t.end()
49     }
50   )
51 })
52
53 test("clean", function (t) {
54   cleanup()
55   t.pass("cleaned up")
56   t.end()
57 })
58
59 function setup () {
60   cleanup()
61   mkdirp.sync(pkg)
62   // make sure it installs locally
63   mkdirp.sync(resolve(target, "node_modules"))
64   fs.writeFileSync(
65     resolve(pkg, "package.json"),
66     JSON.stringify(json, null, 2)+"\n"
67   )
68   fs.writeFileSync(resolve(pkg, "install-man.1"), "THIS IS A MANPAGE\n")
69 }
70
71 function cleanup () {
72   process.chdir(osenv.tmpdir())
73   rimraf.sync(pkg)
74   rimraf.sync(target)
75 }