UNPKG

authenzify

Version:

server to manage authentication authorization of users and more

60 lines (48 loc) 1.56 kB
import * as assert from 'assert' import { before, after } from 'mocha' import { getConfig } from '../../util/settings.js' import { dropDatabase } from '../../util/mongodb-util.js' import { usersManagementServer } from '../../../src/app.js' import { factory } from '../../../src/adapters/factories/index.js' import { ConfigService } from '../../../src/services/config.service.js' describe('User', async () => { let user let token let server let config before(async () => { config = await getConfig() const storageConfig = config.storage await dropDatabase(storageConfig) const { USER_EMAIL, USER_PASSWORD } = process.env const userMinimal = { email: USER_EMAIL, firstName: 'John', lastName: 'Doe', } const configService = new ConfigService(config) const usersManagement = await factory(configService) user = await usersManagement.signUp({ ...userMinimal, password: USER_PASSWORD, }) token = await usersManagement.signIn({ email: userMinimal.email, password: USER_PASSWORD, }) server = (await usersManagementServer(config)).server }) after(async () => { await server?.close() }) describe(`Get user by token`, () => { it('Should return user details when the token is valid', async () => { const res = await server .inject() .get(`/v1/users/${user.id}`) .cookies({ [config.authorizationCookieKey]: token }) const retUser = res.json() assert.equal(retUser.email, user.email) }) }) })