more unit test fixes now the UseProfileAddress OOM has been identified
All checks were successful
Deploy to Test Environment / deploy-to-test (push) Successful in 10m14s
All checks were successful
Deploy to Test Environment / deploy-to-test (push) Successful in 10m14s
This commit is contained in:
@@ -52,10 +52,7 @@ export class UserRepository {
|
||||
);
|
||||
return res.rows[0];
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, email },
|
||||
'Database error in findUserByEmail',
|
||||
);
|
||||
logger.error({ err: error, email }, 'Database error in findUserByEmail');
|
||||
throw new Error('Failed to retrieve user from database.');
|
||||
}
|
||||
}
|
||||
@@ -130,10 +127,7 @@ export class UserRepository {
|
||||
throw new UniqueConstraintError('A user with this email address already exists.');
|
||||
}
|
||||
// The withTransaction helper logs the rollback, so we just log the context here.
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, email },
|
||||
'Error during createUser transaction',
|
||||
);
|
||||
logger.error({ err: error, email }, 'Error during createUser transaction');
|
||||
throw new Error('Failed to create user in database.');
|
||||
});
|
||||
}
|
||||
@@ -188,10 +182,7 @@ export class UserRepository {
|
||||
|
||||
return authableProfile;
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, email },
|
||||
'Database error in findUserWithProfileByEmail',
|
||||
);
|
||||
logger.error({ err: error, email }, 'Database error in findUserWithProfileByEmail');
|
||||
throw new Error('Failed to retrieve user with profile from database.');
|
||||
}
|
||||
}
|
||||
@@ -215,7 +206,7 @@ export class UserRepository {
|
||||
} catch (error) {
|
||||
if (error instanceof NotFoundError) throw error;
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in findUserById',
|
||||
);
|
||||
throw new Error('Failed to retrieve user by ID from database.');
|
||||
@@ -242,7 +233,7 @@ export class UserRepository {
|
||||
} catch (error) {
|
||||
if (error instanceof NotFoundError) throw error;
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in findUserWithPasswordHashById',
|
||||
);
|
||||
throw new Error('Failed to retrieve user with sensitive data by ID from database.');
|
||||
@@ -291,7 +282,7 @@ export class UserRepository {
|
||||
throw error;
|
||||
}
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in findUserProfileById',
|
||||
);
|
||||
throw new Error('Failed to retrieve user profile from database.');
|
||||
@@ -340,7 +331,7 @@ export class UserRepository {
|
||||
throw error;
|
||||
}
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId, profileData },
|
||||
{ err: error, userId, profileData },
|
||||
'Database error in updateUserProfile',
|
||||
);
|
||||
throw new Error('Failed to update user profile in database.');
|
||||
@@ -372,7 +363,7 @@ export class UserRepository {
|
||||
throw error;
|
||||
}
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId, preferences },
|
||||
{ err: error, userId, preferences },
|
||||
'Database error in updateUserPreferences',
|
||||
);
|
||||
throw new Error('Failed to update user preferences in database.');
|
||||
@@ -393,7 +384,7 @@ export class UserRepository {
|
||||
);
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in updateUserPassword',
|
||||
);
|
||||
throw new Error('Failed to update user password in database.');
|
||||
@@ -408,9 +399,9 @@ export class UserRepository {
|
||||
async deleteUserById(userId: string, logger: Logger): Promise<void> {
|
||||
try {
|
||||
await this.db.query('DELETE FROM public.users WHERE user_id = $1', [userId]);
|
||||
} catch (error) {
|
||||
} catch (error) { // This was a duplicate, fixed.
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in deleteUserById',
|
||||
);
|
||||
throw new Error('Failed to delete user from database.');
|
||||
@@ -431,7 +422,7 @@ export class UserRepository {
|
||||
);
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in saveRefreshToken',
|
||||
);
|
||||
throw new Error('Failed to save refresh token.');
|
||||
@@ -457,7 +448,7 @@ export class UserRepository {
|
||||
} catch (error) {
|
||||
if (error instanceof NotFoundError) throw error;
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error },
|
||||
{ err: error },
|
||||
'Database error in findUserByRefreshToken',
|
||||
);
|
||||
throw new Error('Failed to find user by refresh token.'); // Generic error for other failures
|
||||
@@ -474,10 +465,7 @@ export class UserRepository {
|
||||
refreshToken,
|
||||
]);
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error },
|
||||
'Database error in deleteRefreshToken',
|
||||
);
|
||||
logger.error({ err: error }, 'Database error in deleteRefreshToken');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -501,7 +489,7 @@ export class UserRepository {
|
||||
throw new ForeignKeyConstraintError('The specified user does not exist.');
|
||||
}
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in createPasswordResetToken',
|
||||
);
|
||||
throw new Error('Failed to create password reset token.');
|
||||
@@ -521,7 +509,7 @@ export class UserRepository {
|
||||
return res.rows;
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error },
|
||||
{ err: error },
|
||||
'Database error in getValidResetTokens',
|
||||
);
|
||||
throw new Error('Failed to retrieve valid reset tokens.');
|
||||
@@ -538,7 +526,7 @@ export class UserRepository {
|
||||
await this.db.query('DELETE FROM public.password_reset_tokens WHERE token_hash = $1', [tokenHash]);
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, tokenHash },
|
||||
{ err: error, tokenHash },
|
||||
'Database error in deleteResetToken',
|
||||
);
|
||||
}
|
||||
@@ -559,10 +547,7 @@ export class UserRepository {
|
||||
);
|
||||
return res.rowCount ?? 0;
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error },
|
||||
'Database error in deleteExpiredResetTokens',
|
||||
);
|
||||
logger.error({ err: error }, 'Database error in deleteExpiredResetTokens');
|
||||
throw new Error('Failed to delete expired password reset tokens.');
|
||||
}
|
||||
}
|
||||
@@ -581,10 +566,7 @@ export class UserRepository {
|
||||
if (error instanceof Error && 'code' in error && error.code === '23503') {
|
||||
throw new ForeignKeyConstraintError('One or both users do not exist.');
|
||||
}
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, followerId, followingId },
|
||||
'Database error in followUser',
|
||||
);
|
||||
logger.error({ err: error, followerId, followingId }, 'Database error in followUser');
|
||||
throw new Error('Failed to follow user.');
|
||||
}
|
||||
}
|
||||
@@ -601,10 +583,7 @@ export class UserRepository {
|
||||
[followerId, followingId],
|
||||
);
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, followerId, followingId },
|
||||
'Database error in unfollowUser',
|
||||
);
|
||||
logger.error({ err: error, followerId, followingId }, 'Database error in unfollowUser');
|
||||
throw new Error('Failed to unfollow user.');
|
||||
}
|
||||
}
|
||||
@@ -635,10 +614,7 @@ export class UserRepository {
|
||||
const res = await this.db.query<ActivityLogItem>(query, [userId, limit, offset]);
|
||||
return res.rows;
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId, limit, offset },
|
||||
'Database error in getUserFeed',
|
||||
);
|
||||
logger.error({ err: error, userId, limit, offset }, 'Database error in getUserFeed');
|
||||
throw new Error('Failed to retrieve user feed.');
|
||||
}
|
||||
}
|
||||
@@ -660,10 +636,7 @@ export class UserRepository {
|
||||
);
|
||||
return res.rows[0];
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, queryData },
|
||||
'Database error in logSearchQuery',
|
||||
);
|
||||
logger.error({ err: error, queryData }, 'Database error in logSearchQuery');
|
||||
throw new Error('Failed to log search query.');
|
||||
}
|
||||
}
|
||||
@@ -698,7 +671,7 @@ export async function exportUserData(userId: string, logger: Logger): Promise<{
|
||||
});
|
||||
} catch (error) {
|
||||
logger.error(
|
||||
{ err: error instanceof Error ? error.message : error, userId },
|
||||
{ err: error, userId },
|
||||
'Database error in exportUserData',
|
||||
);
|
||||
throw new Error('Failed to export user data.');
|
||||
|
||||
Reference in New Issue
Block a user