Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGar <gar+gh@danger.computer>2021-04-13 20:07:46 +0300
committerGar <gar+gh@danger.computer>2021-04-14 19:35:29 +0300
commitdfcd0c1e2331c1f4b6573466b50505772eddaf22 (patch)
tree9c0f72e605e26d279ad9f2b92d01ef000f550122 /smoke-tests
parentf1e6743a6e8e32ddad6d1964eb05d17e6c50a456 (diff)
tap@15.0.2
PR-URL: https://github.com/npm/cli/pull/3069 Credit: @isaacs Close: #3069 Reviewed-by: @ruyadorno, @nlf
Diffstat (limited to 'smoke-tests')
-rw-r--r--smoke-tests/index.js6
-rw-r--r--smoke-tests/server.js31
2 files changed, 16 insertions, 21 deletions
diff --git a/smoke-tests/index.js b/smoke-tests/index.js
index 1d352c625..d16f49872 100644
--- a/smoke-tests/index.js
+++ b/smoke-tests/index.js
@@ -16,9 +16,9 @@ t.cleanSnapshot = s => s.split(cwd).join('{CWD}')
.replace(/^npm@.*\ /mg, 'npm ')
// setup server
-const registryServer = require('./server.js')
-const { registry } = registryServer
-t.test('setup server', { bail: true, buffered: false }, registryServer)
+const { start, stop, registry } = require('./server.js')
+t.before(start)
+t.teardown(stop)
// setup fixtures
const path = t.testdir({
diff --git a/smoke-tests/server.js b/smoke-tests/server.js
index 88cb5883d..03aacb4b8 100644
--- a/smoke-tests/server.js
+++ b/smoke-tests/server.js
@@ -14,8 +14,8 @@ let advisoryBulkResponse = null
let failAdvisoryBulk = false
let auditResponse = null
let failAudit = false
-const startServer = cb => {
- const server = module.exports.server = http.createServer((req, res) => {
+const startServer = () => new Promise((res, rej) => {
+ const server = exports.server = http.createServer((req, res) => {
res.setHeader('connection', 'close')
if (req.url === '/-/npm/v1/security/advisories/bulk') {
@@ -226,15 +226,10 @@ const startServer = cb => {
res.end(er.stack)
}
})
- server.listen(PORT, cb)
-}
-
-module.exports = t => startServer(() => {
- t.parent.teardown(() => module.exports.server.close())
- t.end()
+ server.listen(PORT, res)
})
-module.exports.auditResponse = value => {
+exports.auditResponse = value => {
if (auditResponse && auditResponse !== value) {
throw new Error('setting audit response, but already set\n' +
'(did you forget to call the returned function on teardown?)')
@@ -242,12 +237,12 @@ module.exports.auditResponse = value => {
auditResponse = value
return () => auditResponse = null
}
-module.exports.failAudit = () => {
+exports.failAudit = () => {
failAudit = true
return () => failAudit = false
}
-module.exports.advisoryBulkResponse = value => {
+exports.advisoryBulkResponse = value => {
if (advisoryBulkResponse && advisoryBulkResponse !== value) {
throw new Error('setting advisory bulk response, but already set\n' +
'(did you forget to call the returned function on teardown?)')
@@ -255,22 +250,22 @@ module.exports.advisoryBulkResponse = value => {
advisoryBulkResponse = value
return () => advisoryBulkResponse = null
}
-module.exports.failAdvisoryBulk = () => {
+exports.failAdvisoryBulk = () => {
failAdvisoryBulk = true
return () => failAdvisoryBulk = false
}
-module.exports.registry = `http://localhost:${PORT}/`
+exports.registry = `http://localhost:${PORT}/`
-module.exports.start = startServer
-module.exports.stop = () => module.exports.server.close()
+exports.start = startServer
+exports.stop = () => exports.server.close()
if (require.main === module) {
- startServer(() => {
+ startServer().then(() => {
console.log(`Mock registry live at:
- ${module.exports.registry}
+ ${exports.registry}
Press ^D to close gracefully.`)
})
process.openStdin()
- process.stdin.on('end', () => module.exports.server.close())
+ process.stdin.on('end', () => exports.stop())
}