mirror of
https://github.com/taobataoma/meanTorrent.git
synced 2026-07-07 16:11:27 +02:00
Merge pull request #1246 from QiyuLi/fix/supoort_mongo_3.2
fix(core): Support WiredTiger engine errmsg format in MongoDB 3.2
This commit is contained in:
@@ -7,7 +7,17 @@ var getUniqueErrorMessage = function (err) {
|
||||
var output;
|
||||
|
||||
try {
|
||||
var fieldName = err.errmsg.substring(err.errmsg.lastIndexOf('.$') + 2, err.errmsg.lastIndexOf('_1'));
|
||||
var begin = 0;
|
||||
if (err.errmsg.lastIndexOf('.$') !== -1) {
|
||||
// support mongodb <= 3.0 (default: MMapv1 engine)
|
||||
// "errmsg" : "E11000 duplicate key error index: mean-dev.users.$email_1 dup key: { : \"test@user.com\" }"
|
||||
begin = err.errmsg.lastIndexOf('.$') + 2;
|
||||
} else {
|
||||
// support mongodb >= 3.2 (default: WiredTiger engine)
|
||||
// "errmsg" : "E11000 duplicate key error collection: mean-dev.users index: email_1 dup key: { : \"test@user.com\" }"
|
||||
begin = err.errmsg.lastIndexOf('index: ') + 7;
|
||||
}
|
||||
var fieldName = err.errmsg.substring(begin, err.errmsg.lastIndexOf('_1'));
|
||||
output = fieldName.charAt(0).toUpperCase() + fieldName.slice(1) + ' already exists';
|
||||
|
||||
} catch (ex) {
|
||||
|
||||
@@ -742,10 +742,7 @@ describe('User CRUD tests', function () {
|
||||
}
|
||||
|
||||
// Call the assertion callback
|
||||
// MongoDB changed document validation output in version 3.2:
|
||||
// >= 3.2 11000 duplicate key error collection: mean-test.users index: username already exists
|
||||
// < 3.2 Username already exists
|
||||
userInfoRes.body.message.toLowerCase().should.containEql('username already exists');
|
||||
userInfoRes.body.message.should.equal('Username already exists');
|
||||
|
||||
return done();
|
||||
});
|
||||
@@ -797,10 +794,7 @@ describe('User CRUD tests', function () {
|
||||
}
|
||||
|
||||
// Call the assertion callback
|
||||
// MongoDB changed document validation output in version 3.2:
|
||||
// >= 3.2 11000 duplicate key error collection: mean-test.users index: email already exists
|
||||
// < 3.2 Email already exists
|
||||
userInfoRes.body.message.toLowerCase().should.containEql('email already exists');
|
||||
userInfoRes.body.message.should.equal('Email already exists');
|
||||
|
||||
return done();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user