@@ -842,6 +842,7 @@ async fn test_recover_and_reset() {
842842#[ async_test]
843843async fn test_reset_identity ( ) {
844844 let user_id = user_id ! ( "@example:morpheus.localhost" ) ;
845+ let backup_count = 4 ;
845846 let ( client, server) = test_client ( user_id) . await ;
846847
847848 enable ( user_id, & client, & server, true ) . await ;
@@ -850,16 +851,16 @@ async fn test_reset_identity() {
850851 assert_eq ! ( client. encryption( ) . backups( ) . state( ) , BackupState :: Enabled ) ;
851852 assert_eq ! ( client. encryption( ) . recovery( ) . state( ) , RecoveryState :: Enabled ) ;
852853
853- let did_delete_backup = Arc :: new ( Mutex :: new ( false ) ) ;
854+ let backups_remaining = Arc :: new ( Mutex :: new ( backup_count ) ) ;
854855
855856 // Disabling backups
856857 Mock :: given ( method ( "GET" ) )
857858 . and ( path ( "_matrix/client/r0/room_keys/version" ) )
858859 . and ( header ( "authorization" , "Bearer 1234" ) )
859860 . respond_with ( {
860- let did_delete_backup = did_delete_backup . clone ( ) ;
861+ let backups_remaining = backups_remaining . clone ( ) ;
861862 move |_: & wiremock:: Request | {
862- if * did_delete_backup . lock ( ) . unwrap ( ) {
863+ if * backups_remaining . lock ( ) . unwrap ( ) == 0 {
863864 ResponseTemplate :: new ( 404 ) . set_body_json ( json ! ( {
864865 "errcode" : "M_NOT_FOUND" ,
865866 "error" : "No current backup version"
@@ -878,7 +879,7 @@ async fn test_reset_identity() {
878879 }
879880 }
880881 } )
881- . expect ( 3 )
882+ . expect ( backup_count + 3 )
882883 . named ( "room_keys/version GET" )
883884 . mount ( & server)
884885 . await ;
@@ -887,13 +888,13 @@ async fn test_reset_identity() {
887888 . and ( path ( "_matrix/client/r0/room_keys/version/1" ) )
888889 . and ( header ( "authorization" , "Bearer 1234" ) )
889890 . respond_with ( {
890- let did_delete_backup = did_delete_backup . clone ( ) ;
891+ let did_delete_backup = backups_remaining . clone ( ) ;
891892 move |_: & wiremock:: Request | {
892- * did_delete_backup. lock ( ) . unwrap ( ) = true ;
893+ * did_delete_backup. lock ( ) . unwrap ( ) -= 1 ;
893894 ResponseTemplate :: new ( 200 ) . set_body_json ( json ! ( { } ) )
894895 }
895896 } )
896- . expect ( 1 )
897+ . expect ( backup_count )
897898 . mount ( & server)
898899 . await ;
899900
0 commit comments