UNPKG

authenzify

Version:

server to manage authentication authorization of users and more

52 lines (43 loc) 1.46 kB
import getPort from 'get-port' 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 { ACTIVATE_USER_BY } from '../../../src/constant.js' describe('Sign up', async () => { let token let server let config let credentials before(async () => { const port = await getPort() config = await getConfig({ port }) const { USER_EMAIL, USER_PASSWORD } = process.env credentials = { email: USER_EMAIL, password: USER_PASSWORD } const storageConfig = config.storage await dropDatabase(storageConfig) server = (await usersManagementServer(config)).server await server.inject().post('/v1/users/sign-up').body(credentials) const res = await server .inject() .body(credentials) .post('/v1/users/sign-in') const tokenRes = res.json() token = tokenRes.token }) after(async () => { await server?.close() }) describe(`Verify user by '${ACTIVATE_USER_BY.AUTO}'`, () => { it('Should return the authenticated user', async () => { const user = await server .inject() .body(credentials) .get('/v1/users/me') .cookies({ [config.authorizationCookieKey]: token }) const { email } = user.json() assert.equal(email, credentials.email) }) }) })