From 1f3a7625360821db56e5c7b2e6ba3253656b0ad6 Mon Sep 17 00:00:00 2001 From: Claudio Martin Herranz <160405164+ClaudioMartinH@users.noreply.github.com> Date: Mon, 28 Oct 2024 11:25:40 +0100 Subject: [PATCH] Migrated queries to knex methods in users/list.test.ts (#1507) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Gonzalo Fourtané Odisea <154799410+ghOdisea@users.noreply.github.com> --- services/sso/CHANGELOG.md | 10 +++- services/sso/package.json | 4 +- services/sso/src/__tests__/users/list.test.ts | 57 ++++++++++--------- 3 files changed, 38 insertions(+), 33 deletions(-) diff --git a/services/sso/CHANGELOG.md b/services/sso/CHANGELOG.md index e50fc4578..b05e83f69 100644 --- a/services/sso/CHANGELOG.md +++ b/services/sso/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. # Changelog +## [1.49.0] - 2024-10-28 + +### Changed + +- Updated `dashboard/users/list.test.ts` to Knex methods. + ## [1.48.0] - 2024-10-28 ### Changed @@ -19,13 +25,13 @@ All notable changes to this project will be documented in this file. ### Changed -- Updated all Typescript types to it's corresponding TTypeNames. +- Updated test suite `__tests__/users/list.test.ts` queries to Knex methods. ## [1.45.00] - 2024-10-15 ### Changed -- Updated `dashboard/users/batchDelete.test ` to Knex. +- Updated `dashboard/users/batchDelete.test` to Knex. - Replaced `client.query` with Knex methods (`whereIn`, `select`). ## [1.44.0] - 2024-10-15 diff --git a/services/sso/package.json b/services/sso/package.json index a5863d8b9..7d5befacb 100644 --- a/services/sso/package.json +++ b/services/sso/package.json @@ -1,8 +1,6 @@ { "name": "sso-service", - - "version": "1.47.0", - + "version": "1.49.0", "description": "", "directories": { "test": "test" diff --git a/services/sso/src/__tests__/users/list.test.ts b/services/sso/src/__tests__/users/list.test.ts index 83839da7f..3ebb81e7f 100644 --- a/services/sso/src/__tests__/users/list.test.ts +++ b/services/sso/src/__tests__/users/list.test.ts @@ -4,35 +4,37 @@ import qs from 'qs' import { userSchema } from '../../schemas' import { server, testUserData } from '../globalSetup' import { pathRoot } from '../../routes/routes' -import { client } from '../../db/client' +import db from '../../db/knexClient' const route = `${pathRoot.v1.users}` -const adminIdData = await client.query( - 'SELECT id FROM "user" WHERE dni IN ($1) ', - [testUserData.admin.dni] -) -const userIdData = await client.query( - 'SELECT id FROM "user" WHERE dni IN ($1) ', - [testUserData.user.dni] -) -const deletedUserIdData = await client.query( - 'SELECT id FROM "user" WHERE dni IN ($1) ', - [testUserData.userToDelete.dni] -) -const { id } = adminIdData.rows[0] -const { id: userId } = userIdData.rows[0] -const { id: deletedUserId } = deletedUserIdData.rows[0] + +const adminIdData = await db('user') + .select('id') + .where({ dni: testUserData.admin.dni }) + .first() +const userIdData = await db('user') + .select('id') + .where({ dni: testUserData.user.dni }) + .first() +const deletedUserIdData = await db('user') + .select('id') + .where({ dni: testUserData.userToDelete.dni }) + .first() +const { id } = adminIdData +const { id: userId } = userIdData +const { id: deletedUserId } = deletedUserIdData + const responseSchema = userSchema.pick({ id: true, name: true }).array() + const stringData = (data: string[]) => qs.stringify( { id: data, fields: ['id', 'name'] }, { indices: false, arrayFormat: 'comma' } ) afterEach(async () => { - await client.query('UPDATE "user" SET deleted_at = $1 WHERE dni = $2', [ - null, - testUserData.userToDelete.dni, - ]) + await db('user') + .update({ deleted_at: null }) + .where({ dni: testUserData.userToDelete.dni }) }) describe('Testing get users name by Id endpoint', () => { it('returns a user successfully with a single valid ID', async () => { @@ -84,10 +86,10 @@ describe('Testing get users name by Id endpoint', () => { }) it('returns an empty array if the user is deleted', async () => { - await client.query( - 'UPDATE "user" SET deleted_at = CURRENT_TIMESTAMP WHERE dni = $1', - [testUserData.userToDelete.dni] - ) + await db('user') + .update({ deleted_at: new Date() }) + .where({ dni: testUserData.userToDelete.dni }) + const response = await supertest(server).get( `${route}?${stringData([deletedUserId])}` ) @@ -96,10 +98,9 @@ describe('Testing get users name by Id endpoint', () => { }) it('returns just the not deleted user', async () => { - await client.query( - 'UPDATE "user" SET deleted_at = CURRENT_TIMESTAMP WHERE dni = $1', - [testUserData.userToDelete.dni] - ) + await db('user') + .update({ deleted_at: new Date() }) + .where({ dni: testUserData.userToDelete.dni }) const response = await supertest(server).get( `${route}?${stringData([deletedUserId, id])}` )