From a25c4f1d1e29d891da953da76ead133c2ab402d7 Mon Sep 17 00:00:00 2001 From: Ali BARIN Date: Mon, 11 Nov 2024 12:20:41 +0000 Subject: [PATCH] test(user): write test for generateResetPasswordToken --- packages/backend/src/models/user.test.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/backend/src/models/user.test.js b/packages/backend/src/models/user.test.js index 472e36f2..5dbd4752 100644 --- a/packages/backend/src/models/user.test.js +++ b/packages/backend/src/models/user.test.js @@ -507,4 +507,25 @@ describe('User model', () => { expect(await user.login('wrong-password')).toBe(false); }); }); + + it('generateResetPasswordToken should persist a random reset password token with the current date', async () => { + vi.useFakeTimers(); + + const date = new Date(2024, 10, 11, 15, 17, 0, 0); + vi.setSystemTime(date); + + const user = await createUser({ + resetPasswordToken: null, + resetPasswordTokenSentAt: null, + }); + + await user.generateResetPasswordToken(); + + const refetchedUser = await user.$query(); + + expect(refetchedUser.resetPasswordToken.length).toBe(128); + expect(refetchedUser.resetPasswordTokenSentAt).toStrictEqual(date); + + vi.useRealTimers(); + }); });