1 var test = require('tape')
2 var processRelease = require('../lib/process-release')
4 test('test process release - process.version = 0.8.20', function (t) {
7 var release = processRelease([], { opts: {} }, 'v0.8.20', null)
9 t.equal(release.semver.version, '0.8.20')
12 t.deepEqual(release, {
15 baseUrl: 'https://nodejs.org/dist/v0.8.20/',
16 tarballUrl: 'https://nodejs.org/dist/v0.8.20/node-v0.8.20.tar.gz',
17 shasumsUrl: 'https://nodejs.org/dist/v0.8.20/SHASUMS256.txt',
19 libUrl32: 'https://nodejs.org/dist/v0.8.20/node.lib',
20 libUrl64: 'https://nodejs.org/dist/v0.8.20/x64/node.lib',
21 libPath32: 'node.lib',
22 libPath64: 'x64/node.lib'
26 test('test process release - process.version = 0.10.21', function (t) {
29 var release = processRelease([], { opts: {} }, 'v0.10.21', null)
31 t.equal(release.semver.version, '0.10.21')
34 t.deepEqual(release, {
37 baseUrl: 'https://nodejs.org/dist/v0.10.21/',
38 tarballUrl: 'https://nodejs.org/dist/v0.10.21/node-v0.10.21.tar.gz',
39 shasumsUrl: 'https://nodejs.org/dist/v0.10.21/SHASUMS256.txt',
40 versionDir: '0.10.21',
41 libUrl32: 'https://nodejs.org/dist/v0.10.21/node.lib',
42 libUrl64: 'https://nodejs.org/dist/v0.10.21/x64/node.lib',
43 libPath32: 'node.lib',
44 libPath64: 'x64/node.lib'
48 test('test process release - process.version = 0.12.22', function (t) {
51 var release = processRelease([], { opts: {} }, 'v0.12.22', null)
53 t.equal(release.semver.version, '0.12.22')
56 t.deepEqual(release, {
59 baseUrl: 'https://nodejs.org/dist/v0.12.22/',
60 tarballUrl: 'https://nodejs.org/dist/v0.12.22/node-v0.12.22.tar.gz',
61 shasumsUrl: 'https://nodejs.org/dist/v0.12.22/SHASUMS256.txt',
62 versionDir: '0.12.22',
63 libUrl32: 'https://nodejs.org/dist/v0.12.22/node.lib',
64 libUrl64: 'https://nodejs.org/dist/v0.12.22/x64/node.lib',
65 libPath32: 'node.lib',
66 libPath64: 'x64/node.lib'
70 test('test process release - process.release ~ node@4.1.23', function (t) {
73 var release = processRelease([], { opts: {} }, 'v4.1.23', {
75 headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
78 t.equal(release.semver.version, '4.1.23')
81 t.deepEqual(release, {
84 baseUrl: 'https://nodejs.org/dist/v4.1.23/',
85 tarballUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz',
86 shasumsUrl: 'https://nodejs.org/dist/v4.1.23/SHASUMS256.txt',
88 libUrl32: 'https://nodejs.org/dist/v4.1.23/win-x86/node.lib',
89 libUrl64: 'https://nodejs.org/dist/v4.1.23/win-x64/node.lib',
90 libPath32: 'win-x86/node.lib',
91 libPath64: 'win-x64/node.lib'
95 test('test process release - process.release ~ node@4.1.23 / corp build', function (t) {
98 var release = processRelease([], { opts: {} }, 'v4.1.23', {
100 headersUrl: 'https://some.custom.location/node-v4.1.23-headers.tar.gz'
103 t.equal(release.semver.version, '4.1.23')
104 delete release.semver
106 t.deepEqual(release, {
109 baseUrl: 'https://some.custom.location/',
110 tarballUrl: 'https://some.custom.location/node-v4.1.23-headers.tar.gz',
111 shasumsUrl: 'https://some.custom.location/SHASUMS256.txt',
112 versionDir: '4.1.23',
113 libUrl32: 'https://some.custom.location/win-x86/node.lib',
114 libUrl64: 'https://some.custom.location/win-x64/node.lib',
115 libPath32: 'win-x86/node.lib',
116 libPath64: 'win-x64/node.lib'
120 test('test process release - process.version = 1.8.4', function (t) {
123 var release = processRelease([], { opts: {} }, 'v1.8.4', null)
125 t.equal(release.semver.version, '1.8.4')
126 delete release.semver
128 t.deepEqual(release, {
131 baseUrl: 'https://iojs.org/download/release/v1.8.4/',
132 tarballUrl: 'https://iojs.org/download/release/v1.8.4/iojs-v1.8.4.tar.gz',
133 shasumsUrl: 'https://iojs.org/download/release/v1.8.4/SHASUMS256.txt',
134 versionDir: 'iojs-1.8.4',
135 libUrl32: 'https://iojs.org/download/release/v1.8.4/win-x86/iojs.lib',
136 libUrl64: 'https://iojs.org/download/release/v1.8.4/win-x64/iojs.lib',
137 libPath32: 'win-x86/iojs.lib',
138 libPath64: 'win-x64/iojs.lib'
142 test('test process release - process.release ~ iojs@3.2.24', function (t) {
145 var release = processRelease([], { opts: {} }, 'v3.2.24', {
147 headersUrl: 'https://iojs.org/download/release/v3.2.24/iojs-v3.2.24-headers.tar.gz'
150 t.equal(release.semver.version, '3.2.24')
151 delete release.semver
153 t.deepEqual(release, {
156 baseUrl: 'https://iojs.org/download/release/v3.2.24/',
157 tarballUrl: 'https://iojs.org/download/release/v3.2.24/iojs-v3.2.24-headers.tar.gz',
158 shasumsUrl: 'https://iojs.org/download/release/v3.2.24/SHASUMS256.txt',
159 versionDir: 'iojs-3.2.24',
160 libUrl32: 'https://iojs.org/download/release/v3.2.24/win-x86/iojs.lib',
161 libUrl64: 'https://iojs.org/download/release/v3.2.24/win-x64/iojs.lib',
162 libPath32: 'win-x86/iojs.lib',
163 libPath64: 'win-x64/iojs.lib'
167 test('test process release - process.release ~ iojs@3.2.11 +libUrl32', function (t) {
170 var release = processRelease([], { opts: {} }, 'v3.2.11', {
172 headersUrl: 'https://iojs.org/download/release/v3.2.11/iojs-v3.2.11-headers.tar.gz',
173 libUrl: 'https://iojs.org/download/release/v3.2.11/win-x86/iojs.lib' // custom
176 t.equal(release.semver.version, '3.2.11')
177 delete release.semver
179 t.deepEqual(release, {
182 baseUrl: 'https://iojs.org/download/release/v3.2.11/',
183 tarballUrl: 'https://iojs.org/download/release/v3.2.11/iojs-v3.2.11-headers.tar.gz',
184 shasumsUrl: 'https://iojs.org/download/release/v3.2.11/SHASUMS256.txt',
185 versionDir: 'iojs-3.2.11',
186 libUrl32: 'https://iojs.org/download/release/v3.2.11/win-x86/iojs.lib',
187 libUrl64: 'https://iojs.org/download/release/v3.2.11/win-x64/iojs.lib',
188 libPath32: 'win-x86/iojs.lib',
189 libPath64: 'win-x64/iojs.lib'
193 test('test process release - process.release ~ iojs@3.2.101 +libUrl64', function (t) {
196 var release = processRelease([], { opts: {} }, 'v3.2.101', {
198 headersUrl: 'https://iojs.org/download/release/v3.2.101/iojs-v3.2.101-headers.tar.gz',
199 libUrl: 'https://iojs.org/download/release/v3.2.101/win-x64/iojs.lib' // custom
202 t.equal(release.semver.version, '3.2.101')
203 delete release.semver
205 t.deepEqual(release, {
208 baseUrl: 'https://iojs.org/download/release/v3.2.101/',
209 tarballUrl: 'https://iojs.org/download/release/v3.2.101/iojs-v3.2.101-headers.tar.gz',
210 shasumsUrl: 'https://iojs.org/download/release/v3.2.101/SHASUMS256.txt',
211 versionDir: 'iojs-3.2.101',
212 libUrl32: 'https://iojs.org/download/release/v3.2.101/win-x86/iojs.lib',
213 libUrl64: 'https://iojs.org/download/release/v3.2.101/win-x64/iojs.lib',
214 libPath32: 'win-x86/iojs.lib',
215 libPath64: 'win-x64/iojs.lib'
219 test('test process release - process.release ~ iojs@3.3.0 - borked win-ia32', function (t) {
222 var release = processRelease([], { opts: {} }, 'v3.2.101', {
224 headersUrl: 'https://iojs.org/download/release/v3.2.101/iojs-v3.2.101-headers.tar.gz',
225 libUrl: 'https://iojs.org/download/release/v3.2.101/win-ia32/iojs.lib' // custom
228 t.equal(release.semver.version, '3.2.101')
229 delete release.semver
231 t.deepEqual(release, {
234 baseUrl: 'https://iojs.org/download/release/v3.2.101/',
235 tarballUrl: 'https://iojs.org/download/release/v3.2.101/iojs-v3.2.101-headers.tar.gz',
236 shasumsUrl: 'https://iojs.org/download/release/v3.2.101/SHASUMS256.txt',
237 versionDir: 'iojs-3.2.101',
238 libUrl32: 'https://iojs.org/download/release/v3.2.101/win-x86/iojs.lib',
239 libUrl64: 'https://iojs.org/download/release/v3.2.101/win-x64/iojs.lib',
240 libPath32: 'win-x86/iojs.lib',
241 libPath64: 'win-x64/iojs.lib'
245 test('test process release - process.release ~ node@4.1.23 --target=0.10.40', function (t) {
248 var release = processRelease([], { opts: { target: '0.10.40' } }, 'v4.1.23', {
250 headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
253 t.equal(release.semver.version, '0.10.40')
254 delete release.semver
256 t.deepEqual(release, {
259 baseUrl: 'https://nodejs.org/dist/v0.10.40/',
260 tarballUrl: 'https://nodejs.org/dist/v0.10.40/node-v0.10.40.tar.gz',
261 shasumsUrl: 'https://nodejs.org/dist/v0.10.40/SHASUMS256.txt',
262 versionDir: '0.10.40',
263 libUrl32: 'https://nodejs.org/dist/v0.10.40/node.lib',
264 libUrl64: 'https://nodejs.org/dist/v0.10.40/x64/node.lib',
265 libPath32: 'node.lib',
266 libPath64: 'x64/node.lib'
270 test('test process release - process.release ~ node@4.1.23 --target=1.8.4', function (t) {
273 var release = processRelease([], { opts: { target: '1.8.4' } }, 'v4.1.23', {
275 headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
278 t.equal(release.semver.version, '1.8.4')
279 delete release.semver
281 t.deepEqual(release, {
284 baseUrl: 'https://iojs.org/download/release/v1.8.4/',
285 tarballUrl: 'https://iojs.org/download/release/v1.8.4/iojs-v1.8.4.tar.gz',
286 shasumsUrl: 'https://iojs.org/download/release/v1.8.4/SHASUMS256.txt',
287 versionDir: 'iojs-1.8.4',
288 libUrl32: 'https://iojs.org/download/release/v1.8.4/win-x86/iojs.lib',
289 libUrl64: 'https://iojs.org/download/release/v1.8.4/win-x64/iojs.lib',
290 libPath32: 'win-x86/iojs.lib',
291 libPath64: 'win-x64/iojs.lib'
295 test('test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/baz', function (t) {
298 var release = processRelease([], { opts: { 'dist-url': 'https://foo.bar/baz' } }, 'v4.1.23', {
300 headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
303 t.equal(release.semver.version, '4.1.23')
304 delete release.semver
306 t.deepEqual(release, {
309 baseUrl: 'https://foo.bar/baz/v4.1.23/',
310 tarballUrl: 'https://foo.bar/baz/v4.1.23/node-v4.1.23-headers.tar.gz',
311 shasumsUrl: 'https://foo.bar/baz/v4.1.23/SHASUMS256.txt',
312 versionDir: '4.1.23',
313 libUrl32: 'https://foo.bar/baz/v4.1.23/win-x86/node.lib',
314 libUrl64: 'https://foo.bar/baz/v4.1.23/win-x64/node.lib',
315 libPath32: 'win-x86/node.lib',
316 libPath64: 'win-x64/node.lib'
320 test('test process release - process.release ~ frankenstein@4.1.23', function (t) {
323 var release = processRelease([], { opts: {} }, 'v4.1.23', {
324 name: 'frankenstein',
325 headersUrl: 'https://frankensteinjs.org/dist/v4.1.23/frankenstein-v4.1.23-headers.tar.gz'
328 t.equal(release.semver.version, '4.1.23')
329 delete release.semver
331 t.deepEqual(release, {
333 name: 'frankenstein',
334 baseUrl: 'https://frankensteinjs.org/dist/v4.1.23/',
335 tarballUrl: 'https://frankensteinjs.org/dist/v4.1.23/frankenstein-v4.1.23-headers.tar.gz',
336 shasumsUrl: 'https://frankensteinjs.org/dist/v4.1.23/SHASUMS256.txt',
337 versionDir: 'frankenstein-4.1.23',
338 libUrl32: 'https://frankensteinjs.org/dist/v4.1.23/win-x86/frankenstein.lib',
339 libUrl64: 'https://frankensteinjs.org/dist/v4.1.23/win-x64/frankenstein.lib',
340 libPath32: 'win-x86/frankenstein.lib',
341 libPath64: 'win-x64/frankenstein.lib'
346 test('test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/', function (t) {
349 var release = processRelease([], { opts: { 'dist-url': 'http://foo.bar/baz/' } }, 'v4.1.23', {
350 name: 'frankenstein',
351 headersUrl: 'https://frankensteinjs.org/dist/v4.1.23/frankenstein-v4.1.23.tar.gz'
354 t.equal(release.semver.version, '4.1.23')
355 delete release.semver
357 t.deepEqual(release, {
359 name: 'frankenstein',
360 baseUrl: 'http://foo.bar/baz/v4.1.23/',
361 tarballUrl: 'http://foo.bar/baz/v4.1.23/frankenstein-v4.1.23-headers.tar.gz',
362 shasumsUrl: 'http://foo.bar/baz/v4.1.23/SHASUMS256.txt',
363 versionDir: 'frankenstein-4.1.23',
364 libUrl32: 'http://foo.bar/baz/v4.1.23/win-x86/frankenstein.lib',
365 libUrl64: 'http://foo.bar/baz/v4.1.23/win-x64/frankenstein.lib',
366 libPath32: 'win-x86/frankenstein.lib',
367 libPath64: 'win-x64/frankenstein.lib'
371 test('test process release - process.release ~ node@4.0.0-rc.4', function (t) {
374 var release = processRelease([], { opts: {} }, 'v4.0.0-rc.4', {
376 headersUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz'
379 t.equal(release.semver.version, '4.0.0-rc.4')
380 delete release.semver
382 t.deepEqual(release, {
383 version: '4.0.0-rc.4',
385 baseUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/',
386 tarballUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz',
387 shasumsUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/SHASUMS256.txt',
388 versionDir: '4.0.0-rc.4',
389 libUrl32: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x86/node.lib',
390 libUrl64: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x64/node.lib',
391 libPath32: 'win-x86/node.lib',
392 libPath64: 'win-x64/node.lib'
397 test('test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]', function (t) {
400 // note the missing 'v' on the arg, it should normalise when checking
401 // whether we're on the default or not
402 var release = processRelease([ '4.0.0-rc.4' ], { opts: {} }, 'v4.0.0-rc.4', {
404 headersUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz'
407 t.equal(release.semver.version, '4.0.0-rc.4')
408 delete release.semver
410 t.deepEqual(release, {
411 version: '4.0.0-rc.4',
413 baseUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/',
414 tarballUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz',
415 shasumsUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/SHASUMS256.txt',
416 versionDir: '4.0.0-rc.4',
417 libUrl32: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x86/node.lib',
418 libUrl64: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x64/node.lib',
419 libPath32: 'win-x86/node.lib',
420 libPath64: 'win-x64/node.lib'