@@ -18,7 +18,16 @@ import fetchMock from "fetch-mock-jest";
18
18
import { MockResponse } from "fetch-mock" ;
19
19
20
20
import { createClient , CryptoEvent , MatrixClient } from "../../../src" ;
21
- import { ShowQrCodeCallbacks , ShowSasCallbacks , Verifier , VerifierEvent } from "../../../src/crypto-api/verification" ;
21
+ import {
22
+ ShowQrCodeCallbacks ,
23
+ ShowSasCallbacks ,
24
+ Verifier ,
25
+ VerifierEvent ,
26
+ VerificationPhase ,
27
+ VerificationRequest ,
28
+ VerificationRequestEvent ,
29
+ canAcceptVerificationRequest ,
30
+ } from "../../../src/crypto-api/verification" ;
22
31
import { escapeRegExp } from "../../../src/utils" ;
23
32
import { CRYPTO_BACKENDS , emitPromise , InitCrypto } from "../../test-utils/test-utils" ;
24
33
import { SyncResponder } from "../../test-utils/SyncResponder" ;
@@ -31,11 +40,6 @@ import {
31
40
TEST_USER_ID ,
32
41
} from "../../test-utils/test-data" ;
33
42
import { mockInitialApiRequests } from "../../test-utils/mockEndpoints" ;
34
- import {
35
- Phase ,
36
- VerificationRequest ,
37
- VerificationRequestEvent ,
38
- } from "../../../src/crypto/verification/request/VerificationRequest" ;
39
43
40
44
// The verification flows use javascript timers to set timeouts. We tell jest to use mock timer implementations
41
45
// to ensure that we don't end up with dangling timeouts.
@@ -130,7 +134,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
130
134
] ) ;
131
135
const transactionId = request . transactionId ;
132
136
expect ( transactionId ) . toBeDefined ( ) ;
133
- expect ( request . phase ) . toEqual ( Phase . Requested ) ;
137
+ expect ( request . phase ) . toEqual ( VerificationPhase . Requested ) ;
134
138
expect ( request . roomId ) . toBeUndefined ( ) ;
135
139
136
140
let toDeviceMessage = requestBody . messages [ TEST_USER_ID ] [ TEST_DEVICE_ID ] ;
@@ -148,7 +152,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
148
152
} ,
149
153
} ) ;
150
154
await waitForVerificationRequestChanged ( request ) ;
151
- expect ( request . phase ) . toEqual ( Phase . Ready ) ;
155
+ expect ( request . phase ) . toEqual ( VerificationPhase . Ready ) ;
152
156
expect ( request . otherDeviceId ) . toEqual ( TEST_DEVICE_ID ) ;
153
157
154
158
// ... and picks a method with m.key.verification.start
@@ -165,7 +169,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
165
169
} ,
166
170
} ) ;
167
171
await waitForVerificationRequestChanged ( request ) ;
168
- expect ( request . phase ) . toEqual ( Phase . Started ) ;
172
+ expect ( request . phase ) . toEqual ( VerificationPhase . Started ) ;
169
173
expect ( request . chosenMethod ) . toEqual ( "m.sas.v1" ) ;
170
174
171
175
// there should now be a verifier
@@ -238,7 +242,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
238
242
239
243
// ... and the whole thing should be done!
240
244
await verificationPromise ;
241
- expect ( request . phase ) . toEqual ( Phase . Done ) ;
245
+ expect ( request . phase ) . toEqual ( VerificationPhase . Done ) ;
242
246
243
247
// we're done with the temporary keypair
244
248
olmSAS . free ( ) ;
@@ -290,7 +294,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
290
294
} ,
291
295
} ) ;
292
296
await waitForVerificationRequestChanged ( request ) ;
293
- expect ( request . phase ) . toEqual ( Phase . Ready ) ;
297
+ expect ( request . phase ) . toEqual ( VerificationPhase . Ready ) ;
294
298
295
299
// we should now have QR data we can display
296
300
const qrCodeBuffer = request . getQRCodeBytes ( ) ! ;
@@ -320,7 +324,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
320
324
} ,
321
325
} ) ;
322
326
await waitForVerificationRequestChanged ( request ) ;
323
- expect ( request . phase ) . toEqual ( Phase . Started ) ;
327
+ expect ( request . phase ) . toEqual ( VerificationPhase . Started ) ;
324
328
expect ( request . chosenMethod ) . toEqual ( "m.reciprocate.v1" ) ;
325
329
326
330
// there should now be a verifier
@@ -346,7 +350,7 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
346
350
347
351
// ... and the whole thing should be done!
348
352
await verificationPromise ;
349
- expect ( request . phase ) . toEqual ( Phase . Done ) ;
353
+ expect ( request . phase ) . toEqual ( VerificationPhase . Done ) ;
350
354
} ,
351
355
) ;
352
356
@@ -374,18 +378,18 @@ describe.each(Object.entries(CRYPTO_BACKENDS))("verification (%s)", (backend: st
374
378
} ) ;
375
379
const request : VerificationRequest = await emitPromise ( aliceClient , CryptoEvent . VerificationRequest ) ;
376
380
expect ( request . transactionId ) . toEqual ( TRANSACTION_ID ) ;
377
- expect ( request . phase ) . toEqual ( Phase . Requested ) ;
381
+ expect ( request . phase ) . toEqual ( VerificationPhase . Requested ) ;
378
382
expect ( request . roomId ) . toBeUndefined ( ) ;
379
- expect ( request . canAccept ) . toBe ( true ) ;
383
+ expect ( canAcceptVerificationRequest ( request ) ) . toBe ( true ) ;
380
384
381
385
// Alice accepts, by sending a to-device message
382
386
const sendToDevicePromise = expectSendToDeviceMessage ( "m.key.verification.ready" ) ;
383
387
const acceptPromise = request . accept ( ) ;
384
- expect ( request . canAccept ) . toBe ( false ) ;
385
- expect ( request . phase ) . toEqual ( Phase . Requested ) ;
388
+ expect ( canAcceptVerificationRequest ( request ) ) . toBe ( false ) ;
389
+ expect ( request . phase ) . toEqual ( VerificationPhase . Requested ) ;
386
390
await acceptPromise ;
387
391
const requestBody = await sendToDevicePromise ;
388
- expect ( request . phase ) . toEqual ( Phase . Ready ) ;
392
+ expect ( request . phase ) . toEqual ( VerificationPhase . Ready ) ;
389
393
390
394
const toDeviceMessage = requestBody . messages [ TEST_USER_ID ] [ TEST_DEVICE_ID ] ;
391
395
expect ( toDeviceMessage . methods ) . toContain ( "m.sas.v1" ) ;
0 commit comments