This commit is contained in:
parent
e557540d70
commit
1f5965ae79
4 changed files with 238 additions and 7 deletions
|
@ -1,11 +1,65 @@
|
|||
import AppDataSource from "../../../src/database/dataSources/appDataSource";
|
||||
import UserSetting from "../../../src/database/entities/UserSetting";
|
||||
|
||||
describe("constructor", () => {
|
||||
test.todo("EXPECT settings to be configured");
|
||||
let userSetting: UserSetting;
|
||||
|
||||
beforeEach(() => {
|
||||
userSetting = new UserSetting("userId", "key", "value");
|
||||
});
|
||||
|
||||
test("EXPECT settings to be configured", () => {
|
||||
expect(userSetting).toMatchSnapshot({
|
||||
Id: expect.any(String),
|
||||
WhenCreated: expect.any(Date),
|
||||
WhenUpdated: expect.any(Date),
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe("UpdateValue", () => {
|
||||
test.todo("EXPECT value to be updated");
|
||||
let userSetting: UserSetting;
|
||||
|
||||
beforeEach(() => {
|
||||
userSetting = new UserSetting("userId", "key", "value");
|
||||
|
||||
userSetting.UpdateValue("newValue");
|
||||
});
|
||||
|
||||
test("EXPECT value to be updated", () => {
|
||||
expect(userSetting.Value).toBe("newValue");
|
||||
});
|
||||
});
|
||||
|
||||
describe("FetchOneByKey", () => {
|
||||
test.todo("EXPECT single entity returned");
|
||||
let result: UserSetting | null;
|
||||
let userSetting: UserSetting;
|
||||
|
||||
let findOneMock: jest.Mock;
|
||||
|
||||
beforeEach(async () => {
|
||||
userSetting = new UserSetting("userId", "key", "value");
|
||||
|
||||
findOneMock = jest.fn().mockResolvedValue(userSetting);
|
||||
|
||||
AppDataSource.getRepository = jest.fn().mockReturnValue({
|
||||
findOne: findOneMock,
|
||||
});
|
||||
|
||||
result = await UserSetting.FetchOneByKey("userId", "key");
|
||||
});
|
||||
|
||||
test("EXPECT getRepository to have been called", () => {
|
||||
expect(AppDataSource.getRepository).toHaveBeenCalledTimes(1);
|
||||
expect(AppDataSource.getRepository).toHaveBeenCalledWith(UserSetting);
|
||||
});
|
||||
|
||||
test("EXPECT repository.findOne to have been called", () => {
|
||||
expect(findOneMock).toHaveBeenCalledTimes(1);
|
||||
expect(findOneMock).toHaveBeenCalledWith({ where: { UserId: "userId", Key: "key" }, relations: {}});
|
||||
})
|
||||
|
||||
test("EXPECT single entity returned", () => {
|
||||
expect(result).toBe(userSetting);
|
||||
});
|
||||
});
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`constructor EXPECT settings to be configured 1`] = `
|
||||
{
|
||||
"Id": Any<String>,
|
||||
"Key": "key",
|
||||
"UserId": "userId",
|
||||
"Value": "value",
|
||||
"WhenCreated": Any<Date>,
|
||||
"WhenUpdated": Any<Date>,
|
||||
}
|
||||
`;
|
Loading…
Add table
Add a link
Reference in a new issue