authenzify
Version:
server to manage authentication authorization of users and more
40 lines (33 loc) • 1.27 kB
JavaScript
import { before } from 'mocha'
import * as assert from 'assert'
import { decode } from 'jsonwebtoken'
import { getConfig } from '../../util/settings.js'
import { dropDatabase } from '../../util/mongodb-util.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 In', () => {
let credentials
let usersManagement
before(async () => {
const config = await getConfig()
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)
usersManagement = await factory(configService)
await usersManagement.signUp({
...credentials,
firstName: 'John',
lastName: 'Doe',
})
})
describe(`Verify user by '${ACTIVATE_USER_BY.AUTO}'`, () => {
it('Should test Users.signIn decode JWT token is valid', async () => {
const token = await usersManagement.signIn(credentials)
const decoded = decode(token)
assert.equal(decoded.email, credentials.email)
})
})
})