From 451c53f2cd966a0c9b211568599bf810157e4241 Mon Sep 17 00:00:00 2001 From: Ethan Lane Date: Sat, 29 Jun 2024 09:26:17 +0100 Subject: [PATCH] WIP: Start of basentity tests --- tests/contracts/BaseEntity.test.ts | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/tests/contracts/BaseEntity.test.ts b/tests/contracts/BaseEntity.test.ts index ce4c0a6..0616b3f 100644 --- a/tests/contracts/BaseEntity.test.ts +++ b/tests/contracts/BaseEntity.test.ts @@ -1,5 +1,29 @@ +import BaseEntity from "../../src/contracts/BaseEntity"; +import uuid from "uuid"; + +jest.mock("uuid", () => { + return { + v4: () => "uuidv4", + }; +}); + +jest.useFakeTimers(); + describe('constructor', () => { - test.todo("EXPECT properties to be set"); + test("EXPECT properties to be set", () => { + // Arrange + const systemTime = new Date("2024-06-29T00:00:00.000Z"); + + jest.setSystemTime(systemTime); + + // Act + const entity = new BaseEntity(); + + // Assert + expect(entity.Id).toBe("uuidv4"); + expect(entity.WhenCreated).toStrictEqual(systemTime); + expect(entity.WhenUpdated).toStrictEqual(systemTime); + }); }); describe("Save", () => { @@ -26,4 +50,4 @@ describe("Any", () => { test.todo("GIVEN at least 1 entity is found, EXPECT true to be returned"); test.todo("GIVEN no entities are found, EXPECT false to be returned"); -}); \ No newline at end of file +});