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

Commit 3481577c by Terry Xu

Added a test case for including models when retrieving objects through association

1 parent 705b7014
Showing with 46 additions and 0 deletions
...@@ -623,6 +623,52 @@ describe(Support.getTestDialectTeaser("Include"), function () { ...@@ -623,6 +623,52 @@ describe(Support.getTestDialectTeaser("Include"), function () {
}) })
}) })
}) })
it('should support include when retrieving associated objects', function (done) {
var User = this.sequelize.define('user', {
name: DataTypes.STRING
})
, Group = this.sequelize.define('group', {
name: DataTypes.STRING
})
, UserGroup = this.sequelize.define('user_group', {
vip: DataTypes.INTEGER
})
User.hasMany(Group)
Group.belongsTo(User)
User.hasMany(Group, {
through: UserGroup,
as: 'Clubs'
})
Group.hasMany(User, {
through: UserGroup,
as: 'Members'
})
this.sequelize.sync().success(function () {
User.create({ name: 'Owner' }).success(function (owner) {
User.create({ name: 'Member' }).success(function (member) {
Group.create({ name: 'Group' }).success(function (group) {
owner.addGroup(group).success(function () {
group.addMember(member).success(function () {
owner.getGroups({
include: [{
model: User,
as: 'Members'
}]
}).success(function (groups) {
expect(groups.length).to.equal(1)
expect(groups[0].members[0].name).to.equal('Member')
done()
})
})
})
})
})
})
})
})
}) })
describe('where', function () { describe('where', function () {
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!