From 2f75840e53722c7f2939ff74bcfb7908a548af43 Mon Sep 17 00:00:00 2001 From: ddusichka <78527291+ddusichka@users.noreply.github.com> Date: Thu, 28 Sep 2023 14:02:14 -0400 Subject: [PATCH] add created date to user --- migrations/1695922686467-add date to user.ts | 14 ++++++++++++++ src/auth/auth.controller.spec.ts | 1 + src/auth/auth.service.spec.ts | 1 + src/auth/guards/roles.guard.spec.ts | 1 + .../middleware/authentication.middleware.spec.ts | 1 + src/user/types/user.entity.ts | 5 ++++- src/user/types/user.examples.ts | 3 +++ src/user/user.controller.spec.ts | 1 + src/user/user.examples.ts | 2 ++ src/user/user.service.spec.ts | 2 ++ 10 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 migrations/1695922686467-add date to user.ts diff --git a/migrations/1695922686467-add date to user.ts b/migrations/1695922686467-add date to user.ts new file mode 100644 index 0000000..d17fb55 --- /dev/null +++ b/migrations/1695922686467-add date to user.ts @@ -0,0 +1,14 @@ +import {MigrationInterface, QueryRunner} from "typeorm"; + +export class addDateToUser1695922686467 implements MigrationInterface { + name = 'addDateToUser1695922686467' + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE "user" ADD "createdDate" TIMESTAMP NOT NULL DEFAULT now()`); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE "user" DROP COLUMN "createdDate"`); + } + +} diff --git a/src/auth/auth.controller.spec.ts b/src/auth/auth.controller.spec.ts index 6086e03..43d4516 100644 --- a/src/auth/auth.controller.spec.ts +++ b/src/auth/auth.controller.spec.ts @@ -10,6 +10,7 @@ const mockUser: User = { firstName: 'first', lastName: 'last', role: Role.ADMIN, + createdDate: new Date('2023-09-28'), }; const serviceMock: Partial = { diff --git a/src/auth/auth.service.spec.ts b/src/auth/auth.service.spec.ts index 3e6ff23..1435eae 100644 --- a/src/auth/auth.service.spec.ts +++ b/src/auth/auth.service.spec.ts @@ -13,6 +13,7 @@ const mockUser: User = { firstName: 'first', lastName: 'last', role: Role.RESEARCHER, + createdDate: new Date('2023-09-28'), }; const mockCognitoService = { diff --git a/src/auth/guards/roles.guard.spec.ts b/src/auth/guards/roles.guard.spec.ts index 0cb4b54..ce32281 100644 --- a/src/auth/guards/roles.guard.spec.ts +++ b/src/auth/guards/roles.guard.spec.ts @@ -10,6 +10,7 @@ const mockUser = (role: Role): User => ({ firstName: 'first', lastName: 'last', role, + createdDate: new Date('2023-09-28'), }); const mockContext = (user?: User): Partial => ({ diff --git a/src/auth/middleware/authentication.middleware.spec.ts b/src/auth/middleware/authentication.middleware.spec.ts index 69901e4..9c1a9ac 100644 --- a/src/auth/middleware/authentication.middleware.spec.ts +++ b/src/auth/middleware/authentication.middleware.spec.ts @@ -9,6 +9,7 @@ const mockUser: User = { firstName: 'first', lastName: 'last', role: Role.ADMIN, + createdDate: new Date('2023-09-28'), }; const mockAuthService: Partial = { diff --git a/src/user/types/user.entity.ts b/src/user/types/user.entity.ts index 61c0db0..f4f5221 100644 --- a/src/user/types/user.entity.ts +++ b/src/user/types/user.entity.ts @@ -1,5 +1,5 @@ import { IsEmail } from 'class-validator'; -import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm'; +import { Column, Entity, PrimaryGeneratedColumn, CreateDateColumn } from 'typeorm'; import { Role } from './role'; @Entity() @@ -25,4 +25,7 @@ export class User { default: Role.ADMIN, }) role: Role; + + @CreateDateColumn() + createdDate: Date; } diff --git a/src/user/types/user.examples.ts b/src/user/types/user.examples.ts index bfcab00..bf28cd0 100644 --- a/src/user/types/user.examples.ts +++ b/src/user/types/user.examples.ts @@ -7,6 +7,7 @@ export const ADMIN_1: User = { lastName: 'last', email: 'test@test.com', role: Role.ADMIN, + createdDate: new Date('2023-09-24'), }; export const ADMIN_2: User = { @@ -15,6 +16,7 @@ export const ADMIN_2: User = { lastName: 'last', email: 'already@exists.com', role: Role.ADMIN, + createdDate: new Date('2023-09-24'), }; export const RESEARCHER_1: User = { @@ -23,4 +25,5 @@ export const RESEARCHER_1: User = { lastName: 'last', email: 'researcher@test.com', role: Role.RESEARCHER, + createdDate: new Date('2023-09-24'), }; diff --git a/src/user/user.controller.spec.ts b/src/user/user.controller.spec.ts index 756f67c..092dedc 100644 --- a/src/user/user.controller.spec.ts +++ b/src/user/user.controller.spec.ts @@ -10,6 +10,7 @@ const mockUser: User = { firstName: 'test', lastName: 'user', role: Role.ADMIN, + createdDate: new Date('2023-09-24'), }; const listMockUsers: User[] = [mockUser]; diff --git a/src/user/user.examples.ts b/src/user/user.examples.ts index f6b6773..df8454b 100644 --- a/src/user/user.examples.ts +++ b/src/user/user.examples.ts @@ -6,11 +6,13 @@ export const userExamples = [ role: Role.ADMIN, firstName: 'admin', lastName: 'user', + createdDate: new Date('2023-09-24'), }, { email: 'c4cneu.jpal+researcher@gmail.com', role: Role.RESEARCHER, firstName: 'researcher', lastName: 'user', + createdDate: new Date('2023-09-24'), }, ]; diff --git a/src/user/user.service.spec.ts b/src/user/user.service.spec.ts index bd05d5f..727634b 100644 --- a/src/user/user.service.spec.ts +++ b/src/user/user.service.spec.ts @@ -14,6 +14,7 @@ export const mockUser: User = { firstName: 'William', lastName: 'user', role: Role.ADMIN, + createdDate: new Date('2023-09-24'), }; export const mockResearcher: User = { @@ -22,6 +23,7 @@ export const mockResearcher: User = { firstName: 'Paige', lastName: 'Turner', role: Role.RESEARCHER, + createdDate: new Date('2023-09-24'), }; const listMockUsers: User[] = [mockUser, mockResearcher];