22const expect = require ( 'chai' ) . expect ;
33const MongoMilestoneDB = require ( '../lib/mongo-milestone-db' ) ;
44const SnapshotFactory = require ( './factories/snapshot-factory' ) ;
5+ const mongodbRequire = require ( '../lib/mongodb' ) ;
56
67const MONGO_URL = process . env . TEST_MONGO_URL || 'mongodb://localhost:27017/test' ;
78
8- [ 'mongodb2' , 'mongodb3' ] . forEach ( ( driver ) => {
9+ [ 'mongodb2' , 'mongodb3' , 'mongodb4' ] . forEach ( ( driver ) => {
910 const mongodb = require ( driver ) ;
11+ mongodbRequire . mongodb = mongodb ;
1012
1113 function create ( options , callback ) {
1214 if ( typeof options === 'function' ) {
@@ -20,7 +22,13 @@ const MONGO_URL = process.env.TEST_MONGO_URL || 'mongodb://localhost:27017/test'
2022 mongo : ( shareDbCallback ) => {
2123 let mongo ;
2224
23- mongodb . connect ( MONGO_URL )
25+ const connect = ( url ) => {
26+ if ( typeof mongodb . connect === 'function' ) return mongodb . connect ( url ) ;
27+ const client = new mongodb . MongoClient ( MONGO_URL ) ;
28+ return client . connect ( ) ;
29+ } ;
30+
31+ connect ( MONGO_URL )
2432 . then ( ( mongoConnection ) => {
2533 mongo = mongoConnection ;
2634 return MongoMilestoneDB . _isLegacyMongoClient ( mongo )
@@ -249,7 +257,7 @@ const MONGO_URL = process.env.TEST_MONGO_URL || 'mongodb://localhost:27017/test'
249257 beforeEach ( ( ) => {
250258 const options = { interval : 100 } ;
251259 db = new MongoMilestoneDB ( MONGO_URL , options ) ;
252- return db . _mongoPromise . then ( mongo => mongo . db ( ) . dropDatabase ( ) ) ;
260+ return db . _db ( ) . then ( mongo => mongo . dropDatabase ( ) ) ;
253261 } ) ;
254262
255263 afterEach ( ( done ) => {
0 commit comments