|
1 | 1 | 'use strict'
|
2 | 2 |
|
| 3 | +const assert = require('assert') |
| 4 | + |
3 | 5 | const agent = require('../../dd-trace/test/plugins/agent')
|
4 | 6 | const { breakThen, unbreakThen } = require('../../dd-trace/test/plugins/helpers')
|
5 | 7 | const { ERROR_MESSAGE, ERROR_TYPE } = require('../../dd-trace/src/constants')
|
6 | 8 |
|
7 | 9 | const { expectedSchema, rawExpectedSchema } = require('./naming')
|
8 | 10 |
|
9 | 11 | describe('Plugin', () => {
|
10 |
| - let redis |
11 |
| - let client |
12 |
| - let tracer |
13 |
| - |
14 | 12 | describe('redis', () => {
|
15 | 13 | withVersions('redis', ['@node-redis/client', '@redis/client'], (version, moduleName) => {
|
| 14 | + let redis |
| 15 | + let client |
| 16 | + let tracer |
| 17 | + describe('client basics', () => { |
| 18 | + beforeEach(async () => { |
| 19 | + tracer = require('../../dd-trace') |
| 20 | + redis = require(`../../../versions/${moduleName}@${version}`).get() |
| 21 | + }) |
| 22 | + |
| 23 | + it('should support queue options', async () => { |
| 24 | + tracer = require('../../dd-trace') |
| 25 | + redis = require(`../../../versions/${moduleName}@${version}`).get() |
| 26 | + const client = redis.createClient({ url: 'redis://127.0.0.1:6379', commandsQueueMaxLength: 1 }) |
| 27 | + const connectPromise = client.connect() |
| 28 | + const passingPromise = client.get('foo') |
| 29 | + await assert.rejects(Promise.all([ |
| 30 | + passingPromise, |
| 31 | + client.get('bar'), |
| 32 | + connectPromise, |
| 33 | + ]), { |
| 34 | + message: /queue/ |
| 35 | + }) |
| 36 | + await passingPromise |
| 37 | + await client.quit() |
| 38 | + }) |
| 39 | + }) |
| 40 | + |
16 | 41 | describe('without configuration', () => {
|
17 | 42 | before(() => {
|
18 | 43 | return agent.load('redis')
|
|
0 commit comments