-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathmongodb-check-schema-test.js
101 lines (94 loc) · 3.4 KB
/
mongodb-check-schema-test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
// mongodb-driver-test.js
//
// Testing the mongodb driver
//
// Copyright 2012, E14N https://e14n.com/
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
var _ = require('underscore'),
assert = require('assert'),
vows = require('vows'),
databank = require('databank'),
Databank = databank.Databank,
MongoDatabank = require('../lib/mongodb');
Databank.register('mongodb', MongoDatabank);
hostBase = {host: '172.23.42.5',
port: 27017,
dbname: 'test'};
rsBase = {rs_name: 'databank0',
hosts: ['172.23.42.2', '172.23.42.3', '172.23.42.4'],
dbname: 'test'};
var suite = vows.describe("checkSchema param is respected");
suite.addBatch({
"When we get a one-host databank with checkSchema set to false": {
topic: function() {
var params = _.extend({checkSchema: false, dbname: 'test-checkschema-false-' + Date.now()}, hostBase),
db = Databank.get("mongodb", params);
return db;
},
"db.checkSchema is false": function(db) {
assert.isFalse(db.checkSchema);
}
},
"When we get a one-host databank with checkSchema set to true": {
topic: function() {
var params = _.extend({checkSchema: true, dbname: 'test-checkschema-true-' + Date.now()}, hostBase),
db = Databank.get("mongodb", params);
return db;
},
"db.checkSchema is true": function(db) {
assert.isTrue(db.checkSchema);
}
},
"When we get a one-host databank with checkSchema undefined": {
topic: function() {
var params = _.extend({dbname: 'test-checkschema-undefined-' + Date.now()}, hostBase),
db = Databank.get("mongodb", params);
return db;
},
"db.checkSchema is true": function(db) {
assert.isTrue(db.checkSchema);
}
},
"When we get a replicated databank with checkSchema set to false": {
topic: function() {
var params = _.extend({checkSchema: false, dbname: 'test-checkschema-false-' + Date.now()}, rsBase),
db = Databank.get("mongodb", params);
return db;
},
"db.checkSchema is false": function(db) {
assert.isFalse(db.checkSchema);
}
},
"When we get a replicated databank with checkSchema set to true": {
topic: function() {
var params = _.extend({checkSchema: true, dbname: 'test-checkschema-true-' + Date.now()}, rsBase),
db = Databank.get("mongodb", params);
return db;
},
"db.checkSchema is true": function(db) {
assert.isTrue(db.checkSchema);
}
},
"When we get a replicated databank with checkSchema undefined": {
topic: function() {
var params = _.extend({dbname: 'test-checkschema-undefined-' + Date.now()}, rsBase),
db = Databank.get("mongodb", params);
return db;
},
"db.checkSchema is true": function(db) {
assert.isTrue(db.checkSchema);
}
}
});
suite['export'](module);