Skip to content

Commit 9c4a089

Browse files
committed
test(member-info): test member info query
1 parent cb6035d commit 9c4a089

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

src/conversation-member-info.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ export default class ConversationMemberInfo {
5757
* @type {Boolean}
5858
* @readonly
5959
*/
60-
get isOwner() { return this.memberId === internal(this).conversation.id; }
60+
get isOwner() { return this.memberId === internal(this).conversation.creator; }
6161

6262
toJSON() {
6363
const {

test/conversation.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -469,13 +469,30 @@ describe('Conversation', () => {
469469
it('member can not promote itself', async () =>
470470
memberConversation.updateMemberRole(member.id, ConversationMemberRole.MANAGER)
471471
.should.be.rejectedWith('CONVERSATION_OPERATION_UNAUTHORIZED'));
472+
it('info query', async () => {
473+
const infoes = await ownerConversation.getAllMemberInfo();
474+
infoes.should.have.length(4);
475+
(await ownerConversation.getMemberInfo(owner.id)).toJSON().should.eql({
476+
conversationId: ownerConversation.id,
477+
memberId: owner.id,
478+
role: ConversationMemberRole.MEMBER,
479+
isOwner: true,
480+
});
481+
(await ownerConversation.getMemberInfo(member.id)).toJSON().should.eql({
482+
conversationId: ownerConversation.id,
483+
memberId: member.id,
484+
role: ConversationMemberRole.MEMBER,
485+
isOwner: false,
486+
});
487+
});
472488
it('info update and notification', async () => {
473489
const waitForUpdate = listen(memberConversation, 'memberinfoupdated');
474490
await ownerConversation.updateMemberRole(member.id, ConversationMemberRole.MANAGER);
475491
const [{ member: memberId, memberInfo, updatedBy }] = await waitForUpdate;
476492
memberId.should.be.eql(member.id);
477493
updatedBy.should.be.eql(owner.id);
478494
memberInfo.role.should.be.eql(ConversationMemberRole.MANAGER);
495+
memberInfo.isOwner.should.be.false();
479496
const cachedMemberInfo = await memberConversation.getMemberInfo(member.id);
480497
cachedMemberInfo.role.should.be.eql(ConversationMemberRole.MANAGER);
481498
});

0 commit comments

Comments
 (0)