authenzify
Version:
server to manage authentication authorization of users and more
50 lines (42 loc) • 1.59 kB
JavaScript
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'
import { factory } from '../../../src/adapters/factories/index.js'
import { ConfigService } from '../../../src/services/config.service.js'
describe('Sign up', async () => {
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)
const configService = new ConfigService(config)
const usersManagement = await factory(configService)
await usersManagement.signUp(credentials)
server = (await usersManagementServer(config)).server
})
after(async () => {
await server?.close()
})
describe(`Verify user by '${ACTIVATE_USER_BY.AUTO}'`, () => {
it('Should test sign up for verify authorization token', async () => {
const res = await server
.inject()
.body(credentials)
.post('/v1/users/sign-in')
const { token } = res.json()
const cookie = res.cookies.find(({ name, value }) => {
return name === config.authorizationCookieKey && value
})
assert.equal(cookie?.value, token)
})
})
})