@@ -39,10 +39,10 @@ describe("RoomState", function () {
39
39
const userLazy = "@lazy:bar" ;
40
40
41
41
let state = new RoomState ( roomId ) ;
42
+ let statev12 = new RoomState ( roomId ) ;
42
43
43
44
beforeEach ( function ( ) {
44
- state = new RoomState ( roomId ) ;
45
- state . setStateEvents ( [
45
+ const commonEvents = [
46
46
utils . mkMembership ( {
47
47
// userA joined
48
48
event : true ,
@@ -67,6 +67,11 @@ describe("RoomState", function () {
67
67
name : "Room name goes here" ,
68
68
} ,
69
69
} ) ,
70
+ ] ;
71
+
72
+ state = new RoomState ( roomId ) ;
73
+ state . setStateEvents ( [
74
+ ...commonEvents ,
70
75
utils . mkEvent ( {
71
76
// Room creation
72
77
type : "m.room.create" ,
@@ -76,6 +81,19 @@ describe("RoomState", function () {
76
81
content : { } ,
77
82
} ) ,
78
83
] ) ;
84
+
85
+ statev12 = new RoomState ( roomId ) ;
86
+ statev12 . setStateEvents ( [
87
+ ...commonEvents ,
88
+ utils . mkEvent ( {
89
+ // Room creation (v12 version)
90
+ type : "m.room.create" ,
91
+ user : userA ,
92
+ room : roomId ,
93
+ event : true ,
94
+ content : { room_version : "12" } ,
95
+ } ) ,
96
+ ] ) ;
79
97
} ) ;
80
98
81
99
describe ( "getMembers" , function ( ) {
@@ -1002,6 +1020,24 @@ describe("RoomState", function () {
1002
1020
expect ( state . maySendEvent ( "m.room.other_thing" , userA ) ) . toEqual ( true ) ;
1003
1021
expect ( state . maySendEvent ( "m.room.other_thing" , userB ) ) . toEqual ( false ) ;
1004
1022
} ) ;
1023
+
1024
+ it ( "should recognise power level of room creators in v12 rooms" , function ( ) {
1025
+ const powerLevelEvent = new MatrixEvent ( {
1026
+ type : "m.room.power_levels" ,
1027
+ room_id : roomId ,
1028
+ sender : userA ,
1029
+ state_key : "" ,
1030
+ content : {
1031
+ users_default : 0 ,
1032
+ state_default : 100 ,
1033
+ events_default : 100 ,
1034
+ users : { } ,
1035
+ } ,
1036
+ } ) ;
1037
+ statev12 . setStateEvents ( [ powerLevelEvent ] ) ;
1038
+
1039
+ expect ( statev12 . maySendEvent ( "m.room.name" , userA ) ) . toEqual ( true ) ;
1040
+ } ) ;
1005
1041
} ) ;
1006
1042
1007
1043
describe ( "processBeaconEvents" , ( ) => {
0 commit comments