Skip to content

Commit ca855f8

Browse files
authored
Fix mongoose plugin tests (#5217)
* move withPeerService out of before * use mongo 4.0 * do not call done() * provide dbName * service name delegate * await * try without bufferCommands * restore original version
1 parent adbba87 commit ca855f8

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

packages/datadog-plugin-mongoose/test/index.spec.js

+16-17
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
const semver = require('semver')
44
const agent = require('../../dd-trace/test/plugins/agent')
55
const { NODE_MAJOR } = require('../../../version')
6+
const id = require('../../dd-trace/src/id')
67

78
describe('Plugin', () => {
8-
let id
99
let tracer
1010
let dbName
1111

@@ -23,7 +23,8 @@ describe('Plugin', () => {
2323
function connect () {
2424
// mongoose.connect('mongodb://username:password@host:port/database?options...');
2525
// actually the first part of the path is the dbName and not the collection
26-
mongoose.connect(`mongodb://localhost:27017/${dbName}`, {
26+
return mongoose.connect(`mongodb://localhost:27017/${dbName}`, {
27+
bufferCommands: false,
2728
useNewUrlParser: true,
2829
useUnifiedTopology: true
2930
})
@@ -33,25 +34,14 @@ describe('Plugin', () => {
3334
return agent.load(['mongodb-core'])
3435
})
3536

36-
before(() => {
37-
id = require('../../dd-trace/src/id')
37+
before(async () => {
3838
tracer = require('../../dd-trace')
3939

40-
dbName = id().toString()
41-
4240
mongoose = require(`../../../versions/mongoose@${version}`).get()
4341

44-
connect()
45-
46-
withPeerService(
47-
() => tracer,
48-
'mongodb-core',
49-
(done) => {
50-
const PeerCat = mongoose.model('PeerCat', { name: String })
51-
new PeerCat({ name: 'PeerCat' }).save().catch(done)
52-
done()
53-
},
54-
'db', 'peer.service')
42+
dbName = id().toString()
43+
44+
await connect()
5545
})
5646

5747
after(() => {
@@ -62,6 +52,15 @@ describe('Plugin', () => {
6252
return agent.close({ ritmReset: false })
6353
})
6454

55+
withPeerService(
56+
() => tracer,
57+
'mongodb-core',
58+
(done) => {
59+
const PeerCat = mongoose.model('PeerCat', { name: String })
60+
new PeerCat({ name: 'PeerCat' }).save().catch(done)
61+
},
62+
() => dbName, 'peer.service')
63+
6564
it('should propagate context with write operations', () => {
6665
const Cat = mongoose.model('Cat1', { name: String })
6766

packages/dd-trace/test/setup/mocha.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ function withPeerService (tracer, pluginName, spanGenerationFn, service, service
131131
agent
132132
.use(traces => {
133133
const span = traces[0][0]
134-
expect(span.meta).to.have.property('peer.service', service)
134+
expect(span.meta).to.have.property('peer.service', typeof service === 'function' ? service() : service)
135135
expect(span.meta).to.have.property('_dd.peer.service.source', serviceSource)
136136
})
137137
.then(done)

0 commit comments

Comments
 (0)