@@ -457,6 +457,14 @@ mod tests {
457457 // Initialize main backend (joiner)
458458 let _path = init_test_backend ( "test_replicate_group_main" ) . await ?;
459459
460+ // Wait for both backends to be ready
461+ wait_for_public_internet_ready ( & backend2) . await ?;
462+ {
463+ use server:: get_backend;
464+ let backend = get_backend ( ) . await ?;
465+ wait_for_public_internet_ready ( & backend) . await ?;
466+ }
467+
460468 // Create group and repo in backend2 (creator)
461469 let mut group = backend2. create_group ( ) . await ?;
462470 let join_url = group. get_url ( ) ?;
@@ -506,10 +514,11 @@ mod tests {
506514 . to_request ( ) ;
507515 let file_resp = test:: call_service ( & app, file_req) . await ;
508516
517+ let has_correct_repo = repos_resp. repos . iter ( ) . any ( |r| r. name == TEST_GROUP_NAME ) ;
509518 let ok = groups_resp. groups . len ( ) == 1
510519 && groups_resp. groups [ 0 ] . name . as_deref ( ) == Some ( TEST_GROUP_NAME )
511- && repos_resp. repos . len ( ) == 1
512- && repos_resp . repos [ 0 ] . name == TEST_GROUP_NAME
520+ && ! repos_resp. repos . is_empty ( )
521+ && has_correct_repo
513522 && file_resp. status ( ) . is_success ( ) ;
514523
515524 if ok {
@@ -878,9 +887,12 @@ mod tests {
878887 assert_eq ! ( refresh_data[ "status" ] , "success" , "First refresh status should be success" ) ;
879888
880889 let repos = refresh_data[ "repos" ] . as_array ( ) . expect ( "repos should be an array" ) ;
881- assert_eq ! ( repos. len( ) , 1 , "Should have one repo after joining" ) ;
890+ // We expect at least 2 repos: creator's read-only repo + joiner's auto-created writable repo
891+ assert ! ( !repos. is_empty( ) , "Should have at least one repo after joining" ) ;
882892
883- let repo_data = & repos[ 0 ] ;
893+ let repo_data = repos. iter ( )
894+ . find ( |r| r[ "name" ] == TEST_GROUP_NAME )
895+ . expect ( "Should find the creator's repo by name" ) ;
884896 assert_eq ! ( repo_data[ "name" ] , TEST_GROUP_NAME , "Repo should have correct name" ) ;
885897
886898 // First refresh should have refreshed files
0 commit comments