Skip to content

Commit e16f68d

Browse files
committed
test(ci): add failing cache config test
1 parent f2d770a commit e16f68d

File tree

1 file changed

+31
-2
lines changed

1 file changed

+31
-2
lines changed

test/tap/ci.js

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ const test = require('tap').test
1212

1313
const Dir = Tacks.Dir
1414
const File = Tacks.File
15+
const cacheDir = common.cache
1516
const testDir = common.pkg
1617

1718
const EXEC_OPTS = { cwd: testDir }
@@ -47,7 +48,7 @@ test('setup', () => {
4748
const fixture = new Tacks(Dir({
4849
'package.json': File(PKG)
4950
}))
50-
return rimraf(testDir).then(() => {
51+
return Promise.all([rimraf(cacheDir), rimraf(testDir)]).then(() => {
5152
fixture.create(testDir)
5253
return mr({port: common.port})
5354
})
@@ -306,7 +307,35 @@ test('errors if package-lock.json invalid', (t) => {
306307
)
307308
})
308309

310+
test('correct cache location when using cache config', (t) => {
311+
const fixture = new Tacks(Dir({
312+
'package.json': File(PKG),
313+
'package-lock.json': File(RAW_LOCKFILE)
314+
}))
315+
return Promise.all([rimraf(cacheDir), rimraf(testDir)])
316+
.then(() => fixture.create(cacheDir))
317+
.then(() => fixture.create(testDir))
318+
.then(() => common.npm([
319+
'ci',
320+
`--cache=${cacheDir}`,
321+
'--foo=asdf',
322+
'--registry', common.registry,
323+
'--loglevel', 'warn'
324+
], EXEC_OPTS))
325+
.then((ret) => {
326+
const code = ret[0]
327+
const stderr = ret[2]
328+
t.equal(code, 0, 'command completed without error')
329+
t.equal(stderr.trim(), '', 'no output on stderr')
330+
return fs.readdirAsync(path.join(cacheDir, '_cacache'))
331+
})
332+
.then((modules) => {
333+
t.ok(modules, 'should create _cacache folder')
334+
t.end()
335+
})
336+
})
337+
309338
test('cleanup', () => {
310339
SERVER.close()
311-
return rimraf(testDir)
340+
return Promise.all([rimraf(cacheDir), rimraf(testDir)])
312341
})

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy