不要怂,就是干,撸起袖子干!

Commit 6c7c96a2 by Edgar Veiga

Re-Add tests for findOrCreate method.

1 parent cda7fac2
Showing with 52 additions and 0 deletions
...@@ -97,6 +97,58 @@ describe("[" + Helpers.getTestDialectTeaser() + "] DAOFactory", function() { ...@@ -97,6 +97,58 @@ describe("[" + Helpers.getTestDialectTeaser() + "] DAOFactory", function() {
}) })
}) })
describe('findOrCreate', function () {
it("Returns instace if already existent. Single find field.", function (done) {
var self = this,
data = {
username: 'Username'
};
this.User.create(data).success(function (user) {
self.User.findOrCreate({
username: user.username
}).success(function (_user) {
expect(_user.id).toEqual(user.id)
expect(_user.username).toEqual('Username')
done()
})
})
})
it("Returns instace if already existent. Multiple find fields.", function (done) {
var self = this,
data = {
username: 'Username',
data: 'ThisIsData'
};
this.User.create(data).success(function (user) {
self.User.findOrCreate(data).success(function (_user) {
expect(_user.id).toEqual(user.id)
expect(_user.username).toEqual('Username')
expect(_user.data).toEqual('ThisIsData')
done()
})
})
})
it("Creates new instance with default value.", function (done) {
var self = this,
data = {
username: 'Username'
},
default_values = {
data: 'ThisIsData'
};
this.User.findOrCreate(data, default_values).success(function (user) {
expect(user.username).toEqual('Username')
expect(user.data).toEqual('ThisIsData')
done()
})
})
})
describe('create', function() { describe('create', function() {
it("doesn't allow duplicated records with unique:true", function(done) { it("doesn't allow duplicated records with unique:true", function(done) {
var User = this.sequelize.define('UserWithUniqueUsername', { var User = this.sequelize.define('UserWithUniqueUsername', {
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!