@@ -95,7 +95,6 @@ import {
95
95
establishOlmSession ,
96
96
getTestOlmAccountKeys ,
97
97
} from "./olm-utils" ;
98
- import { ToDevicePayload } from "../../../src/models/ToDeviceMessage" ;
99
98
import { AccountDataAccumulator } from "../../test-utils/AccountDataAccumulator" ;
100
99
import { UNSIGNED_MEMBERSHIP_FIELD } from "../../../src/@types/event" ;
101
100
import { KnownMembership } from "../../../src/@types/membership" ;
@@ -995,7 +994,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string,
995
994
keyResponder . addDeviceKeys ( testDeviceKeys ) ;
996
995
997
996
await startClientAndAwaitFirstSync ( ) ;
998
- aliceClient . setGlobalErrorOnUnknownDevices ( false ) ;
999
997
1000
998
// tell alice she is sharing a room with bob
1001
999
syncResponder . sendOrQueueSyncResponse ( getSyncResponse ( [ "@bob:xyz" ] ) ) ;
@@ -1013,8 +1011,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string,
1013
1011
await expectSendRoomKey ( "@bob:xyz" , testOlmAccount ) ;
1014
1012
} ) ;
1015
1013
1016
- it ( "Alice sends a megolm message with GlobalErrorOnUnknownDevices=false" , async ( ) => {
1017
- aliceClient . setGlobalErrorOnUnknownDevices ( false ) ;
1014
+ it ( "Alice sends a megolm message" , async ( ) => {
1018
1015
const homeserverUrl = aliceClient . getHomeserverUrl ( ) ;
1019
1016
const keyResponder = new E2EKeyResponder ( homeserverUrl ) ;
1020
1017
keyResponder . addKeyReceiver ( "@alice:localhost" , keyReceiver ) ;
@@ -1042,7 +1039,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string,
1042
1039
} ) ;
1043
1040
1044
1041
it ( "We should start a new megolm session after forceDiscardSession" , async ( ) => {
1045
- aliceClient . setGlobalErrorOnUnknownDevices ( false ) ;
1046
1042
const homeserverUrl = aliceClient . getHomeserverUrl ( ) ;
1047
1043
const keyResponder = new E2EKeyResponder ( homeserverUrl ) ;
1048
1044
keyResponder . addKeyReceiver ( "@alice:localhost" , keyReceiver ) ;
@@ -1077,87 +1073,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string,
1077
1073
await Promise . all ( [ aliceClient . sendTextMessage ( ROOM_ID , "test2" ) , p2 ] ) ;
1078
1074
} ) ;
1079
1075
1080
- describe ( "get|setGlobalErrorOnUnknownDevices" , ( ) => {
1081
- it ( "should raise an error if crypto is disabled" , ( ) => {
1082
- aliceClient [ "cryptoBackend" ] = undefined ;
1083
- expect ( ( ) => aliceClient . setGlobalErrorOnUnknownDevices ( true ) ) . toThrow ( "encryption disabled" ) ;
1084
- expect ( ( ) => aliceClient . getGlobalErrorOnUnknownDevices ( ) ) . toThrow ( "encryption disabled" ) ;
1085
- } ) ;
1086
-
1087
- oldBackendOnly ( "should permit sending to unknown devices" , async ( ) => {
1088
- expect ( aliceClient . getGlobalErrorOnUnknownDevices ( ) ) . toBeTruthy ( ) ;
1089
-
1090
- expectAliceKeyQuery ( { device_keys : { "@alice:localhost" : { } } , failures : { } } ) ;
1091
- await startClientAndAwaitFirstSync ( ) ;
1092
- const p2pSession = await establishOlmSession ( aliceClient , keyReceiver , syncResponder , testOlmAccount ) ;
1093
-
1094
- syncResponder . sendOrQueueSyncResponse ( getSyncResponse ( [ "@bob:xyz" ] ) ) ;
1095
- await syncPromise ( aliceClient ) ;
1096
-
1097
- // start out with the device unknown - the send should be rejected.
1098
- expectAliceKeyQuery ( getTestKeysQueryResponse ( "@bob:xyz" ) ) ;
1099
- expectAliceKeyQuery ( getTestKeysQueryResponse ( "@bob:xyz" ) ) ;
1100
-
1101
- await aliceClient . sendTextMessage ( ROOM_ID , "test" ) . then (
1102
- ( ) => {
1103
- throw new Error ( "sendTextMessage failed on an unknown device" ) ;
1104
- } ,
1105
- ( e ) => {
1106
- expect ( e . name ) . toEqual ( "UnknownDeviceError" ) ;
1107
- } ,
1108
- ) ;
1109
-
1110
- // enable sending to unknown devices, and resend
1111
- aliceClient . setGlobalErrorOnUnknownDevices ( false ) ;
1112
- expect ( aliceClient . getGlobalErrorOnUnknownDevices ( ) ) . toBeFalsy ( ) ;
1113
-
1114
- const room = aliceClient . getRoom ( ROOM_ID ) ! ;
1115
- const pendingMsg = room . getPendingEvents ( ) [ 0 ] ;
1116
-
1117
- const inboundGroupSessionPromise = expectSendRoomKey ( "@bob:xyz" , testOlmAccount , p2pSession ) ;
1118
-
1119
- await Promise . all ( [
1120
- aliceClient . resendEvent ( pendingMsg , room ) ,
1121
- expectSendMegolmMessage ( inboundGroupSessionPromise ) ,
1122
- ] ) ;
1123
- } ) ;
1124
- } ) ;
1125
-
1126
- describe ( "get|setGlobalBlacklistUnverifiedDevices" , ( ) => {
1127
- it ( "should send a m.unverified code in toDevice messages to an unverified device when globalBlacklistUnverifiedDevices=true" , async ( ) => {
1128
- aliceClient . getCrypto ( ) ! . globalBlacklistUnverifiedDevices = true ;
1129
-
1130
- expectAliceKeyQuery ( { device_keys : { "@alice:localhost" : { } } , failures : { } } ) ;
1131
- await startClientAndAwaitFirstSync ( ) ;
1132
- await establishOlmSession ( aliceClient , keyReceiver , syncResponder , testOlmAccount ) ;
1133
-
1134
- // Tell alice we share a room with bob
1135
- syncResponder . sendOrQueueSyncResponse ( getSyncResponse ( [ "@bob:xyz" ] ) ) ;
1136
- await syncPromise ( aliceClient ) ;
1137
-
1138
- // Force alice to download bob keys
1139
- expectAliceKeyQuery ( getTestKeysQueryResponse ( "@bob:xyz" ) ) ;
1140
-
1141
- // Wait to receive the toDevice message and return bob device content
1142
- const toDevicePromise = new Promise < ToDevicePayload > ( ( resolve ) => {
1143
- fetchMock . putOnce ( new RegExp ( "/sendToDevice/m.room_key.withheld/" ) , ( url , request ) => {
1144
- const content = JSON . parse ( request . body as string ) ;
1145
- resolve ( content . messages [ "@bob:xyz" ] [ "DEVICE_ID" ] ) ;
1146
- return { } ;
1147
- } ) ;
1148
- } ) ;
1149
-
1150
- // Mock endpoint of message sending
1151
- fetchMock . put ( new RegExp ( "/send/" ) , { event_id : "$event_id" } ) ;
1152
-
1153
- await aliceClient . sendTextMessage ( ROOM_ID , "test" ) ;
1154
-
1155
- // Finally, check that the toDevice message has the m.unverified code
1156
- const toDeviceContent = await toDevicePromise ;
1157
- expect ( toDeviceContent . code ) . toBe ( "m.unverified" ) ;
1158
- } ) ;
1159
- } ) ;
1160
-
1161
1076
describe ( "Session should rotate according to encryption settings" , ( ) => {
1162
1077
/**
1163
1078
* Send a message to bob and get the encrypted message
@@ -1475,7 +1390,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string,
1475
1390
1476
1391
describe ( "getEncryptionInfoForEvent" , ( ) => {
1477
1392
it ( "handles outgoing events" , async ( ) => {
1478
- aliceClient . setGlobalErrorOnUnknownDevices ( false ) ;
1479
1393
expectAliceKeyQuery ( { device_keys : { "@alice:localhost" : { } } , failures : { } } ) ;
1480
1394
await startClientAndAwaitFirstSync ( ) ;
1481
1395
@@ -1579,7 +1493,6 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("crypto (%s)", (backend: string,
1579
1493
// set up the aliceTestClient so that it is a room with no known members
1580
1494
expectAliceKeyQuery ( { device_keys : { "@alice:localhost" : { } } , failures : { } } ) ;
1581
1495
await startClientAndAwaitFirstSync ( { lazyLoadMembers : true } ) ;
1582
- aliceClient . setGlobalErrorOnUnknownDevices ( false ) ;
1583
1496
1584
1497
syncResponder . sendOrQueueSyncResponse ( getSyncResponse ( [ ] ) ) ;
1585
1498
await syncPromise ( aliceClient ) ;
0 commit comments