=== Authentication System Test Suite === [1] Database Connection ---------------------------------------- ✓ Connection established ✓ Models instantiated ✓ AuthController instantiated [2] Test User Setup ---------------------------------------- ✓ Test user created [3] Failed Login Tests ---------------------------------------- ✓ Wrong password rejected ✓ Invalid email rejected ✓ Short password rejected [4] Login Attempt Logging ---------------------------------------- ✓ Login attempts logged ✓ Failure count tracked [5] Successful Login Tests ---------------------------------------- ✓ Login successful ✓ Session ID returned ✓ User ID correct ✓ Email correct ✓ Session stored in $_SESSION [6] Session Validation Tests ---------------------------------------- ✓ Session is valid ✓ Session contains user_id ✓ Session contains email ✓ Invalid session returns null [7] Session Refresh Tests ---------------------------------------- ✓ Session refresh successful ✓ Session still valid after refresh [8] requireAuth() Tests ---------------------------------------- ✓ requireAuth() returns data ✓ requireAuth() has user_id ✓ requireAuth() throws without session [9] Email Rate Limiting Tests ---------------------------------------- ✓ Email rate limiting works [10] IP Rate Limiting Tests ---------------------------------------- ✓ IP rate limiting works [11] Account Lockout Tests ---------------------------------------- ✓ Account locked after 5 failures ✓ Locked account rejected [12] Logout Tests ---------------------------------------- ✓ Logout successful ✓ Session invalidated after logout ✓ $_SESSION cleared [13] Logout All Sessions Tests ---------------------------------------- ✓ Multiple sessions created ✓ All sessions destroyed ✓ All sessions invalid [14] Security Info Tests ---------------------------------------- ✓ Security info returned ✓ Has active_sessions field ✓ Has has_2fa field ✓ Has recent_attempts field [15] LoginAttempt Cleanup Tests ---------------------------------------- ✓ Cleanup executed [16] Cleanup ---------------------------------------- ✓ Test user deleted ✓ Lockout test user deleted ================================================== SUMMARY: 40 passed, 0 failed ==================================================