from tests.helpers import register_verify_login def test_me_endpoint(client): headers = register_verify_login(client, "me@example.com", "Valid123") response = client.get("/api/v1/users/me", headers=headers) assert response.status_code == 200 assert response.json()["user"]["email"] == "me@example.com" def test_patch_me_updates_display_name(client): headers = register_verify_login(client, "display@example.com", "Valid123") response = client.patch( "/api/v1/users/me", headers=headers, json={"display_name": "Updated Name"}, ) assert response.status_code == 200 assert response.json()["profile"]["display_name"] == "Updated Name" def test_change_password_rejects_invalid_current(client): headers = register_verify_login(client, "pwd@example.com", "Valid123") response = client.post( "/api/v1/users/me/password", headers=headers, json={"current_password": "Wrong123", "new_password": "NewValid1"}, ) assert response.status_code == 400 assert response.json()["detail"] == "INVALID_CURRENT_PASSWORD"