authenzify
Version:
server to manage authentication authorization of users and more
61 lines (52 loc) • 1.58 kB
JavaScript
import { before } from 'mocha'
import * as assert from 'assert'
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 up', async () => {
let config
let usersManagement
before(async () => {
config = config = await getConfig({
activateUserBy: ACTIVATE_USER_BY.USER_EMAIL,
})
const storageConfig = config.storage
await dropDatabase(storageConfig)
const configService = new ConfigService(config)
usersManagement = await factory(configService)
})
describe(`Verify user by '${ACTIVATE_USER_BY.USER_EMAIL}'`, () => {
it('Should sign up and return verified user', async () => {
const { USER_EMAIL, USER_PASSWORD } = process.env
const userMinimal = {
lastName: 'Doe',
firstName: 'John',
email: USER_EMAIL,
}
const user = await usersManagement.signUp({
...userMinimal,
password: USER_PASSWORD,
})
const { email, isValid, profile, isDeleted } = user
assert.deepEqual(
{
email,
isValid,
profile,
isDeleted,
},
{
isValid: false,
profile: {
lastName: 'Doe',
firstName: 'John',
},
isDeleted: false,
email: USER_EMAIL,
},
)
})
})
})