@@ -22,9 +22,7 @@ import { type ToDeviceKeyTransport } from "../../../src/matrixrtc/ToDeviceKeyTra
2222import  {  KeyTransportEvents ,  type  KeyTransportEventsHandlerMap  }  from  "../../../src/matrixrtc/IKeyTransport.ts" ; 
2323import  {  membershipTemplate ,  mockCallMembership  }  from  "./mocks.ts" ; 
2424import  {  decodeBase64 ,  TypedEventEmitter  }  from  "../../../src" ; 
25- import  {  RoomAndToDeviceTransport  }  from  "../../../src/matrixrtc/RoomAndToDeviceKeyTransport.ts" ; 
26- import  {  type  RoomKeyTransport  }  from  "../../../src/matrixrtc/RoomKeyTransport.ts" ; 
27- import  {  logger ,  type  Logger  }  from  "../../../src/logger.ts" ; 
25+ import  {  logger  }  from  "../../../src/logger.ts" ; 
2826import  {  getParticipantId  }  from  "../../../src/matrixrtc/utils.ts" ; 
2927
3028describe ( "RTCEncryptionManager" ,  ( )  =>  { 
@@ -782,86 +780,6 @@ describe("RTCEncryptionManager", () => {
782780        ) ; 
783781    } ) ; 
784782
785-     it ( "Should re-distribute key on transport switch" ,  async  ( )  =>  { 
786-         const  toDeviceEmitter  =  new  TypedEventEmitter < KeyTransportEvents ,  KeyTransportEventsHandlerMap > ( ) ; 
787-         const  mockToDeviceTransport  =  { 
788-             start : jest . fn ( ) , 
789-             stop : jest . fn ( ) , 
790-             sendKey : jest . fn ( ) . mockResolvedValue ( undefined ) , 
791-             on : toDeviceEmitter . on . bind ( toDeviceEmitter ) , 
792-             off : toDeviceEmitter . off . bind ( toDeviceEmitter ) , 
793-             emit : toDeviceEmitter . emit . bind ( toDeviceEmitter ) , 
794-             setParentLogger : jest . fn ( ) , 
795-         }  as  unknown  as  Mocked < ToDeviceKeyTransport > ; 
796- 
797-         const  roomEmitter  =  new  TypedEventEmitter < KeyTransportEvents ,  KeyTransportEventsHandlerMap > ( ) ; 
798-         const  mockRoomTransport  =  { 
799-             start : jest . fn ( ) , 
800-             stop : jest . fn ( ) , 
801-             sendKey : jest . fn ( ) . mockResolvedValue ( undefined ) , 
802-             on : roomEmitter . on . bind ( roomEmitter ) , 
803-             off : roomEmitter . off . bind ( roomEmitter ) , 
804-             emit : roomEmitter . emit . bind ( roomEmitter ) , 
805-             setParentLogger : jest . fn ( ) , 
806-         }  as  unknown  as  Mocked < RoomKeyTransport > ; 
807- 
808-         const  mockLogger  =  { 
809-             debug : jest . fn ( ) , 
810-             warn : jest . fn ( ) , 
811-         }  as  unknown  as  Mocked < Logger > ; 
812- 
813-         const  transport  =  new  RoomAndToDeviceTransport ( mockToDeviceTransport ,  mockRoomTransport ,  { 
814-             getChild : jest . fn ( ) . mockReturnValue ( mockLogger ) , 
815-         }  as  unknown  as  Mocked < Logger > ) ; 
816- 
817-         encryptionManager  =  new  RTCEncryptionManager ( 
818-             "@alice:example.org" , 
819-             "DEVICE01" , 
820-             getMembershipMock , 
821-             transport , 
822-             statistics , 
823-             onEncryptionKeysChanged , 
824-         ) ; 
825- 
826-         const  members  =  [ 
827-             aCallMembership ( "@bob:example.org" ,  "BOBDEVICE" ) , 
828-             aCallMembership ( "@bob:example.org" ,  "BOBDEVICE2" ) , 
829-             aCallMembership ( "@carl:example.org" ,  "CARLDEVICE" ) , 
830-         ] ; 
831-         getMembershipMock . mockReturnValue ( members ) ; 
832- 
833-         // Let's join 
834-         encryptionManager . join ( undefined ) ; 
835-         encryptionManager . onMembershipsUpdate ( ) ; 
836-         await  jest . advanceTimersByTimeAsync ( 10 ) ; 
837- 
838-         // Should have sent the key to the toDevice transport 
839-         expect ( mockToDeviceTransport . sendKey ) . toHaveBeenCalledTimes ( 1 ) ; 
840-         expect ( mockRoomTransport . sendKey ) . not . toHaveBeenCalled ( ) ; 
841- 
842-         // Simulate receiving a key by room transport 
843-         roomEmitter . emit ( 
844-             KeyTransportEvents . ReceivedKeys , 
845-             "@bob:example.org" , 
846-             "BOBDEVICE" , 
847-             "AAAAAAAAAAA" , 
848-             0  /* KeyId */ , 
849-             0  /* Timestamp */ , 
850-         ) ; 
851- 
852-         await  jest . runOnlyPendingTimersAsync ( ) ; 
853- 
854-         // The key should have been re-distributed to the room transport 
855-         expect ( mockRoomTransport . sendKey ) . toHaveBeenCalled ( ) ; 
856-         expect ( mockToDeviceTransport . sendKey ) . toHaveBeenCalledWith ( 
857-             expect . any ( String ) , 
858-             // It is the first key re-distributed 
859-             0 , 
860-             // to all the members 
861-             members . map ( ( m )  =>  ( {  userId : m . sender ,  deviceId : m . deviceId ,  membershipTs : m . createdTs ( )  } ) ) , 
862-         ) ; 
863-     } ) ; 
864- 
865783    function  aCallMembership ( userId : string ,  deviceId : string ,  ts : number  =  1000 ) : CallMembership  { 
866784        return  mockCallMembership ( 
867785            {  ...membershipTemplate ,  user_id : userId ,  device_id : deviceId ,  created_ts : ts  } , 
0 commit comments