=== RUN TestRepo_Robust_DuplicateUsername --- PASS: TestRepo_Robust_DuplicateUsername (0.01s) === RUN TestRepo_Robust_DuplicateEmail --- PASS: TestRepo_Robust_DuplicateEmail (0.00s) === RUN TestRepo_Robust_DuplicatePhone --- PASS: TestRepo_Robust_DuplicatePhone (0.00s) === RUN TestRepo_Robust_MultipleNullEmail --- PASS: TestRepo_Robust_MultipleNullEmail (0.00s) === RUN TestRepo_Robust_GetByID_NotFound --- PASS: TestRepo_Robust_GetByID_NotFound (0.00s) === RUN TestRepo_Robust_GetByUsername_NotFound --- PASS: TestRepo_Robust_GetByUsername_NotFound (0.00s) === RUN TestRepo_Robust_GetByEmail_NotFound --- PASS: TestRepo_Robust_GetByEmail_NotFound (0.00s) === RUN TestRepo_Robust_GetByPhone_NotFound --- PASS: TestRepo_Robust_GetByPhone_NotFound (0.00s) === RUN TestRepo_Robust_SoftDelete_HiddenFromGet --- PASS: TestRepo_Robust_SoftDelete_HiddenFromGet (0.00s) === RUN TestRepo_Robust_SoftDelete_HiddenFromList --- PASS: TestRepo_Robust_SoftDelete_HiddenFromList (0.00s) === RUN TestRepo_Robust_DeleteNonExistent --- PASS: TestRepo_Robust_DeleteNonExistent (0.00s) === RUN TestRepo_Robust_SQLInjection_GetByUsername --- PASS: TestRepo_Robust_SQLInjection_GetByUsername (0.00s) === RUN TestRepo_Robust_SQLInjection_Search --- PASS: TestRepo_Robust_SQLInjection_Search (0.00s) === RUN TestRepo_Robust_SQLInjection_ExistsByUsername --- PASS: TestRepo_Robust_SQLInjection_ExistsByUsername (0.00s) === RUN TestRepo_Robust_List_ZeroOffset --- PASS: TestRepo_Robust_List_ZeroOffset (0.00s) === RUN TestRepo_Robust_List_OffsetBeyondTotal --- PASS: TestRepo_Robust_List_OffsetBeyondTotal (0.00s) === RUN TestRepo_Robust_List_LargeLimit --- PASS: TestRepo_Robust_List_LargeLimit (0.00s) === RUN TestRepo_Robust_List_EmptyDB --- PASS: TestRepo_Robust_List_EmptyDB (0.00s) === RUN TestRepo_Robust_Search_EmptyKeyword --- PASS: TestRepo_Robust_Search_EmptyKeyword (0.00s) === RUN TestRepo_Robust_Search_SpecialCharsKeyword --- PASS: TestRepo_Robust_Search_SpecialCharsKeyword (0.00s) === RUN TestRepo_Robust_Search_VeryLongKeyword --- PASS: TestRepo_Robust_Search_VeryLongKeyword (0.00s) === RUN TestRepo_Robust_LongFieldValues --- PASS: TestRepo_Robust_LongFieldValues (0.00s) === RUN TestRepo_Robust_UpdateLastLogin_EmptyIP --- PASS: TestRepo_Robust_UpdateLastLogin_EmptyIP (0.00s) === RUN TestRepo_Robust_UpdateLastLogin_LongIP --- PASS: TestRepo_Robust_UpdateLastLogin_LongIP (0.00s) === RUN TestRepo_Robust_ConcurrentCreate_NoDeadlock --- PASS: TestRepo_Robust_ConcurrentCreate_NoDeadlock (0.00s) === RUN TestRepo_Robust_ConcurrentReadWrite_NoDataRace --- PASS: TestRepo_Robust_ConcurrentReadWrite_NoDataRace (0.01s) === RUN TestRepo_Robust_ExistsByUsername_EmptyString --- PASS: TestRepo_Robust_ExistsByUsername_EmptyString (0.00s) === RUN TestRepo_Robust_ExistsByEmail_NilEquivalent --- PASS: TestRepo_Robust_ExistsByEmail_NilEquivalent (0.00s) === RUN TestRepo_Robust_ExistsByPhone_SQLInjection --- PASS: TestRepo_Robust_ExistsByPhone_SQLInjection (0.00s) === RUN TestUserRepository_Create --- PASS: TestUserRepository_Create (0.00s) === RUN TestUserRepository_GetByUsername --- PASS: TestUserRepository_GetByUsername (0.00s) === RUN TestUserRepository_GetByEmail --- PASS: TestUserRepository_GetByEmail (0.00s) === RUN TestUserRepository_Update --- PASS: TestUserRepository_Update (0.01s) === RUN TestUserRepository_Delete --- PASS: TestUserRepository_Delete (0.00s) === RUN TestUserRepository_ExistsBy --- PASS: TestUserRepository_ExistsBy (0.00s) === RUN TestUserRepository_List --- PASS: TestUserRepository_List (0.00s) PASS ok github.com/user-management-system/internal/repository 0.943s