]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/dist-tag.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / test / tap / dist-tag.js
1 var fs = require("fs")
2 var path = require("path")
3 var mkdirp = require("mkdirp")
4 var rimraf = require("rimraf")
5 var mr = require("npm-registry-mock")
6
7 var test = require("tap").test
8 var common = require("../common-tap.js")
9
10 var pkg = path.resolve(__dirname, "dist-tag")
11 var server
12
13 var scoped = {
14   name : "@scoped/pkg",
15   version : "1.1.1"
16 }
17
18 function mocks (server) {
19   // ls current package
20   server.get("/-/package/@scoped%2fpkg/dist-tags")
21     .reply(200, { latest : "1.0.0", a : "0.0.1", b : "0.5.0" })
22
23   // ls named package
24   server.get("/-/package/@scoped%2fanother/dist-tags")
25     .reply(200, { latest : "2.0.0", a : "0.0.2", b : "0.6.0" })
26
27   // add c
28   server.get("/-/package/@scoped%2fanother/dist-tags")
29     .reply(200, { latest : "2.0.0", a : "0.0.2", b : "0.6.0" })
30   server.put("/-/package/@scoped%2fanother/dist-tags/c", "\"7.7.7\"")
31     .reply(200, { latest : "7.7.7", a : "0.0.2", b : "0.6.0", c : "7.7.7" })
32
33   // set same version
34   server.get("/-/package/@scoped%2fanother/dist-tags")
35     .reply(200, { latest : "2.0.0", b : "0.6.0" })
36
37   // rm
38   server.get("/-/package/@scoped%2fanother/dist-tags")
39     .reply(200, { latest : "2.0.0", a : "0.0.2", b : "0.6.0", c : "7.7.7" })
40   server.delete("/-/package/@scoped%2fanother/dist-tags/c")
41     .reply(200, { c : "7.7.7" })
42
43   // rm
44   server.get("/-/package/@scoped%2fanother/dist-tags")
45     .reply(200, { latest : "4.0.0" })
46 }
47
48 test("setup", function (t) {
49   mkdirp(pkg, function (er) {
50     t.ifError(er, pkg + " made successfully")
51
52     mr({port : common.port, plugin : mocks}, function (er, s) {
53       server = s
54
55       fs.writeFile(
56         path.join(pkg, "package.json"),
57         JSON.stringify(scoped),
58         function (er) {
59           t.ifError(er, "wrote package.json")
60           t.end()
61         }
62       )
63     })
64   })
65 })
66
67 test("npm dist-tags ls in current package", function (t) {
68   common.npm(
69     [
70       "dist-tags", "ls",
71       "--registry", common.registry,
72       "--loglevel", "silent"
73     ],
74     { cwd : pkg },
75     function (er, code, stdout, stderr) {
76       t.ifError(er, "npm access")
77       t.notOk(code, "exited OK")
78       t.notOk(stderr, "no error output")
79       t.equal(stdout, "a: 0.0.1\nb: 0.5.0\nlatest: 1.0.0\n")
80
81       t.end()
82     }
83   )
84 })
85
86 test("npm dist-tags ls on named package", function (t) {
87   common.npm(
88     [
89       "dist-tags",
90       "ls", "@scoped/another",
91       "--registry", common.registry,
92       "--loglevel", "silent"
93     ],
94     { cwd : pkg },
95     function (er, code, stdout, stderr) {
96       t.ifError(er, "npm access")
97       t.notOk(code, "exited OK")
98       t.notOk(stderr, "no error output")
99       t.equal(stdout, "a: 0.0.2\nb: 0.6.0\nlatest: 2.0.0\n")
100
101       t.end()
102     }
103   )
104 })
105
106 test("npm dist-tags add @scoped/another@7.7.7 c", function (t) {
107   common.npm(
108     [
109       "dist-tags",
110       "add", "@scoped/another@7.7.7", "c",
111       "--registry", common.registry,
112       "--loglevel", "silent"
113     ],
114     { cwd : pkg },
115     function (er, code, stdout, stderr) {
116       t.ifError(er, "npm access")
117       t.notOk(code, "exited OK")
118       t.notOk(stderr, "no error output")
119       t.equal(stdout, "+c: @scoped/another@7.7.7\n")
120
121       t.end()
122     }
123   )
124 })
125
126 test("npm dist-tags set same version", function (t) {
127   common.npm(
128     [
129       "dist-tag",
130       "set", "@scoped/another@0.6.0", "b",
131       "--registry", common.registry,
132       "--loglevel", "warn"
133     ],
134     { cwd : pkg },
135     function (er, code, stdout, stderr) {
136       t.ifError(er, "npm access")
137       t.notOk(code, "exited OK")
138       t.equal(
139         stderr,
140         "npm WARN dist-tag add b is already set to version 0.6.0\n",
141         "warned about setting same version"
142       )
143       t.notOk(stdout, "only expecting warning message")
144
145       t.end()
146     }
147   )
148 })
149
150 test("npm dist-tags rm @scoped/another c", function (t) {
151   common.npm(
152     [
153       "dist-tags",
154       "rm", "@scoped/another", "c",
155       "--registry", common.registry,
156       "--loglevel", "silent"
157     ],
158     { cwd : pkg },
159     function (er, code, stdout, stderr) {
160       t.ifError(er, "npm access")
161       t.notOk(code, "exited OK")
162       t.notOk(stderr, "no error output")
163       t.equal(stdout, "-c: @scoped/another@7.7.7\n")
164
165       t.end()
166     }
167   )
168 })
169
170 test("npm dist-tags rm @scoped/another nonexistent", function (t) {
171   common.npm(
172     [
173       "dist-tags",
174       "rm", "@scoped/another", "nonexistent",
175       "--registry", common.registry,
176       "--loglevel", "silent"
177     ],
178     { cwd : pkg },
179     function (er, code, stdout, stderr) {
180       t.ifError(er, "npm dist-tag")
181       t.ok(code, "expecting nonzero exit code")
182       t.notOk(stderr, "no error output")
183       t.notOk(stdout, "not expecting output")
184
185       t.end()
186     }
187   )
188 })
189
190 test("cleanup", function (t) {
191   t.pass("cleaned up")
192   rimraf.sync(pkg)
193   server.close()
194   t.end()
195 })