Skip to content

Commit bcaf5c7

Browse files
committed
moved test to generator test case file
1 parent 83ba471 commit bcaf5c7

File tree

3 files changed

+92
-91
lines changed

3 files changed

+92
-91
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
"dependencies": {
1616
"es6-promise": "3.2.1",
1717
"mongodb-core": "2.1.2",
18+
"mongodb-core": "christkv/mongodb-core#2.0",
1819
"readable-stream": "2.1.5"
1920
},
2021
"devDependencies": {

test/functional/replicaset_mock_tests.js

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,3 +222,94 @@ exports['Should correctly print warning and error when no mongos proxies in seed
222222
});
223223
}
224224
}
225+
226+
exports['Should correctly set socketTimeoutMS and connectTimeoutMS for mongos'] = {
227+
metadata: {
228+
requires: {
229+
generators: true,
230+
topology: "single"
231+
}
232+
},
233+
234+
test: function(configuration, test) {
235+
var MongoClient = configuration.require.MongoClient,
236+
ObjectId = configuration.require.ObjectId,
237+
ReadPreference = configuration.require.ReadPreference,
238+
Long = configuration.require.Long,
239+
co = require('co'),
240+
mockupdb = require('../mock');
241+
242+
// Contain mock server
243+
var mongos1 = null;
244+
var mongos2 = null;
245+
var running = true;
246+
247+
// Extend the object
248+
var extend = function(template, fields) {
249+
for(var name in template) fields[name] = template[name];
250+
return fields;
251+
}
252+
253+
// Default message fields
254+
var defaultFields = {
255+
"ismaster" : true,
256+
"msg" : "isdbgrid",
257+
"maxBsonObjectSize" : 16777216,
258+
"maxMessageSizeBytes" : 48000000,
259+
"maxWriteBatchSize" : 1000,
260+
"localTime" : new Date(),
261+
"maxWireVersion" : 5,
262+
"minWireVersion" : 0,
263+
"ok" : 1
264+
}
265+
266+
// Primary server states
267+
var serverIsMaster = [extend(defaultFields, {})];
268+
// Received command on server
269+
var command = null;
270+
// Boot the mock
271+
co(function*() {
272+
mongos1 = yield mockupdb.createServer(52000, 'localhost');
273+
mongos2 = yield mockupdb.createServer(52001, 'localhost');
274+
275+
// Mongos
276+
co(function*() {
277+
while(running) {
278+
var request = yield mongos1.receive();
279+
280+
// Get the document
281+
var doc = request.document;
282+
283+
if(doc.ismaster) {
284+
request.reply(serverIsMaster[0]);
285+
}
286+
}
287+
});
288+
289+
// Mongos
290+
co(function*() {
291+
while(running) {
292+
var request = yield mongos2.receive();
293+
294+
// Get the document
295+
var doc = request.document;
296+
297+
if(doc.ismaster) {
298+
request.reply(serverIsMaster[0]);
299+
}
300+
}
301+
});
302+
303+
MongoClient.connect('mongodb://localhost:52000,localhost:52001/test?socketTimeoutMS=120000&connectTimeoutMS=15000', function(err, db) {
304+
test.equal(null, err);
305+
test.equal(15000, db.serverConfig.s.mongos.s.options.connectionTimeout);
306+
test.equal(120000, db.serverConfig.s.mongos.s.options.socketTimeout);
307+
308+
db.close();
309+
mongos1.destroy();
310+
running = false;
311+
test.done();
312+
});
313+
});
314+
}
315+
}

test/functional/sharding_connection_tests.js

Lines changed: 0 additions & 91 deletions
Original file line numberDiff line numberDiff line change
@@ -207,94 +207,3 @@ exports['Should correctly modify the server reconnectTries for all sharded proxy
207207
});
208208
}
209209
}
210-
211-
exports['Should correctly set socketTimeoutMS and connectTimeoutMS for mongos'] = {
212-
metadata: {
213-
requires: {
214-
generators: true,
215-
topology: "single"
216-
}
217-
},
218-
219-
test: function(configuration, test) {
220-
var MongoClient = configuration.require.MongoClient,
221-
ObjectId = configuration.require.ObjectId,
222-
ReadPreference = configuration.require.ReadPreference,
223-
Long = configuration.require.Long,
224-
co = require('co'),
225-
mockupdb = require('../mock');
226-
227-
// Contain mock server
228-
var mongos1 = null;
229-
var mongos2 = null;
230-
var running = true;
231-
232-
// Extend the object
233-
var extend = function(template, fields) {
234-
for(var name in template) fields[name] = template[name];
235-
return fields;
236-
}
237-
238-
// Default message fields
239-
var defaultFields = {
240-
"ismaster" : true,
241-
"msg" : "isdbgrid",
242-
"maxBsonObjectSize" : 16777216,
243-
"maxMessageSizeBytes" : 48000000,
244-
"maxWriteBatchSize" : 1000,
245-
"localTime" : new Date(),
246-
"maxWireVersion" : 5,
247-
"minWireVersion" : 0,
248-
"ok" : 1
249-
}
250-
251-
// Primary server states
252-
var serverIsMaster = [extend(defaultFields, {})];
253-
// Received command on server
254-
var command = null;
255-
// Boot the mock
256-
co(function*() {
257-
mongos1 = yield mockupdb.createServer(52000, 'localhost');
258-
mongos2 = yield mockupdb.createServer(52001, 'localhost');
259-
260-
// Mongos
261-
co(function*() {
262-
while(running) {
263-
var request = yield mongos1.receive();
264-
265-
// Get the document
266-
var doc = request.document;
267-
268-
if(doc.ismaster) {
269-
request.reply(serverIsMaster[0]);
270-
}
271-
}
272-
});
273-
274-
// Mongos
275-
co(function*() {
276-
while(running) {
277-
var request = yield mongos2.receive();
278-
279-
// Get the document
280-
var doc = request.document;
281-
282-
if(doc.ismaster) {
283-
request.reply(serverIsMaster[0]);
284-
}
285-
}
286-
});
287-
288-
MongoClient.connect('mongodb://localhost:52000,localhost:52001/test?socketTimeoutMS=120000&connectTimeoutMS=15000', function(err, db) {
289-
test.equal(null, err);
290-
test.equal(15000, db.serverConfig.s.mongos.s.options.connectionTimeout);
291-
test.equal(120000, db.serverConfig.s.mongos.s.options.socketTimeout);
292-
293-
db.close();
294-
mongos1.destroy();
295-
running = false;
296-
test.done();
297-
});
298-
});
299-
}
300-
}

0 commit comments

Comments
 (0)