bullpen/backend/test/user.test.js

48 lines
1.4 KiB
JavaScript

const request = require("supertest")
const {
expect,
describe,
test,
beforeAll,
afterAll,
} = require('@jest/globals');
const app = require("../app")
const { signupUser } = require("./data/user.test.data")
const res = require("express/lib/response");
describe("Test user authentication", () => {
test("should signup a user", async () => {
const response = await request(app)
.post("/api/auth/signup")
.send(signupUser);
expect(response.header['content-type']).toBe('application/json; charset=utf-8');
expect(response.statusCode).toBe(200);
});
test("Test user login", async () => {
let user = {};
let response = await request(app)
.post("/api/auth/signin")
.send({
email: 'ryan.nolan@bullpen.com',
password: 'nolan'
});
expect(response.statusCode).toBe(200);
expect(response.body.accessToken).not.toBeNull();
user = response.body;
response = await request(app)
.get(`/api/users/${user.id}`);
expect(response.statusCode).toBe(403);
response = await request(app)
.get(`/api/users/${user.id}`)
.set('x-access-token', user.accessToken);
console.log(response.body);
expect(response.statusCode).toBe(200);
});
});