Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { assert } from "chai";
- import * as sinon from "sinon";
- import { random } from "faker";
- describe("createUser", () => {
- const userRepository = container.get<UserRepository>(TYPES.UserRepository);
- let createUserstub: sinon.SinonStub;
- beforeEach("mock user repository", () => {
- createUserstub = sinon.stub(userRepository, "createUser");
- });
- afterEach("restore stub", () => {
- createUserstub.restore();
- });
- it("should return user with id and without password and salt if user created", async () => {
- const userService = container.get<UserService>(TYPES.UserService);
- createUserstub.returns({
- ...user,
- password: user.password || "",
- salt: random.words(2),
- id: random.uuid(),
- });
- const createdUser = await userService.createUser(user);
- assert.isDefined(createdUser.id);
- assert.strictEqual(createdUser.firstName, user.firstName);
- assert.strictEqual(createdUser.lastName, user.lastName);
- assert.strictEqual(createdUser.email, user.email);
- });
- });
Add Comment
Please, Sign In to add comment