1
0
mirror of https://github.com/redis/node-redis.git synced 2025-12-14 09:42:12 +03:00
Files
node-redis/test/good_traces.spec.js
2017-05-19 06:14:29 +02:00

60 lines
1.4 KiB
JavaScript

'use strict'
const assert = require('assert')
const config = require('./lib/config')
const helper = require('./helper')
const fork = require('child_process').fork
const redis = config.redis
describe('stack traces', () => {
it('should return good traces with NODE_ENV=development set', (done) => {
const external = fork('./test/lib/good-traces.js', {
env: {
NODE_ENV: 'development'
}
})
const id = setTimeout(() => {
external.kill()
done(new Error('Timeout'))
}, 6000)
external.on('close', (code) => {
clearTimeout(id)
assert.strictEqual(code, 0)
done()
})
})
it('should return good traces with NODE_DEBUG=redis env set', (done) => {
const external = fork('./test/lib/good-traces.js', {
env: {
NODE_DEBUG: 'redis'
},
silent: true
})
const id = setTimeout(() => {
external.kill()
done(new Error('Timeout'))
}, 6000)
external.on('close', (code) => {
clearTimeout(id)
assert.strictEqual(code, 0)
done()
})
})
// This is always going to return good stack traces
it('should always return good stack traces for rejected offline commands', () => {
const client = redis.createClient({
enableOfflineQueue: false
})
return client.set('foo').then(helper.fail).catch((err) => {
assert(/good_traces.spec.js/.test(err.stack))
return client.quit()
})
})
})