From 1f18dabca01bf0310d3425c45f614ea9cca32a84 Mon Sep 17 00:00:00 2001 From: David Baker Date: Fri, 5 Aug 2016 14:28:12 +0100 Subject: [PATCH] Add unit test --- spec/unit/room-member.spec.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/spec/unit/room-member.spec.js b/spec/unit/room-member.spec.js index 5289fdd6a..d11cd3822 100644 --- a/spec/unit/room-member.spec.js +++ b/spec/unit/room-member.spec.js @@ -102,6 +102,37 @@ describe("RoomMember", function() { member.setPowerLevelEvent(event); // no-op expect(emitCount).toEqual(1); }); + + it("should honour power levels of zero.", + function() { + var event = utils.mkEvent({ + type: "m.room.power_levels", + room: roomId, + user: userA, + content: { + users_default: 20, + users: { + "@alice:bar": 0, + } + }, + event: true + }); + var emitCount = 0; + + // set the power level to something other than zero or we + // won't get an event + member.powerLevel = 1; + member.on("RoomMember.powerLevel", function(emitEvent, emitMember) { + emitCount += 1; + expect(emitMember.userId).toEqual('@alice:bar'); + expect(emitMember.powerLevel).toEqual(0); + expect(emitEvent).toEqual(event); + }); + + member.setPowerLevelEvent(event); + expect(member.powerLevel).toEqual(0); + expect(emitCount).toEqual(1); + }); }); describe("setTypingEvent", function() {