remove stub
This commit is contained in:
@ -142,7 +142,9 @@ export const createUser = async (input: {
|
||||
})
|
||||
|
||||
if (input.pendingConfirmation) {
|
||||
await sendNewAccountVerificationEmail(user)
|
||||
if (!(await sendNewAccountVerificationEmail(user))) {
|
||||
return Promise.reject({ errorCode: SignupErrorCode.InvalidEmail })
|
||||
}
|
||||
}
|
||||
|
||||
return [user, profile]
|
||||
|
||||
@ -1,10 +1,6 @@
|
||||
import { Job, Queue } from 'bullmq'
|
||||
import chai, { expect } from 'chai'
|
||||
import sinon from 'sinon'
|
||||
import sinonChai from 'sinon-chai'
|
||||
import { expect } from 'chai'
|
||||
import supertest from 'supertest'
|
||||
import { StatusType, User } from '../../src/entity/user'
|
||||
import { SendEmailJobData } from '../../src/jobs/send_email'
|
||||
import { getRepository } from '../../src/repository'
|
||||
import { userRepository } from '../../src/repository/user'
|
||||
import { isValidSignupRequest } from '../../src/routers/auth/auth_router'
|
||||
@ -17,12 +13,9 @@ import {
|
||||
generateVerificationToken,
|
||||
hashPassword,
|
||||
} from '../../src/utils/auth'
|
||||
import * as createTask from '../../src/utils/createTask'
|
||||
import { createTestUser } from '../db'
|
||||
import { generateFakeUuid, request } from '../util'
|
||||
|
||||
chai.use(sinonChai)
|
||||
|
||||
describe('auth router', () => {
|
||||
const route = '/api/auth'
|
||||
|
||||
@ -183,12 +176,7 @@ describe('auth router', () => {
|
||||
})
|
||||
|
||||
context('when user is not confirmed', () => {
|
||||
let fake: (
|
||||
jobData: SendEmailJobData
|
||||
) => Promise<Job<any, any, string> | undefined>
|
||||
|
||||
beforeEach(async () => {
|
||||
fake = sinon.replace(createTask, 'enqueueSendEmail', sinon.fake())
|
||||
await updateUser(user.id, { status: StatusType.Pending })
|
||||
email = user.email
|
||||
password = correctPassword
|
||||
@ -196,7 +184,6 @@ describe('auth router', () => {
|
||||
|
||||
afterEach(async () => {
|
||||
await updateUser(user.id, { status: StatusType.Active })
|
||||
sinon.restore()
|
||||
})
|
||||
|
||||
it('redirects with error code PendingVerification', async () => {
|
||||
@ -205,11 +192,6 @@ describe('auth router', () => {
|
||||
'/email-login?errorCodes=PENDING_VERIFICATION'
|
||||
)
|
||||
})
|
||||
|
||||
it('sends a verification email', async () => {
|
||||
await loginRequest(email, password).expect(302)
|
||||
expect(fake).to.have.been.calledOnce
|
||||
})
|
||||
})
|
||||
|
||||
context('when user not exists', () => {
|
||||
@ -268,12 +250,10 @@ describe('auth router', () => {
|
||||
let token: string
|
||||
|
||||
before(async () => {
|
||||
sinon.replace(createTask, 'enqueueSendEmail', sinon.fake())
|
||||
user = await createTestUser('pendingUser', undefined, 'password', true)
|
||||
})
|
||||
|
||||
after(async () => {
|
||||
sinon.restore()
|
||||
await deleteUser(user.id)
|
||||
})
|
||||
|
||||
@ -371,40 +351,11 @@ describe('auth router', () => {
|
||||
})
|
||||
|
||||
context('when reset password email sent', () => {
|
||||
before(() => {
|
||||
sinon.replace(
|
||||
createTask,
|
||||
'enqueueSendEmail',
|
||||
sinon.fake.resolves(new Job(new Queue('test'), 'test', 'test'))
|
||||
)
|
||||
})
|
||||
|
||||
after(() => {
|
||||
sinon.restore()
|
||||
})
|
||||
|
||||
it('redirects to forgot-password page with success message', async () => {
|
||||
const res = await emailResetPasswordReq(email).expect(302)
|
||||
expect(res.header.location).to.endWith('/auth/reset-sent')
|
||||
})
|
||||
})
|
||||
|
||||
context('when reset password email not sent', () => {
|
||||
before(() => {
|
||||
sinon.replace(createTask, 'enqueueSendEmail', sinon.fake())
|
||||
})
|
||||
|
||||
after(() => {
|
||||
sinon.restore()
|
||||
})
|
||||
|
||||
it('redirects to sign up page with error code INVALID_EMAIL', async () => {
|
||||
const res = await emailResetPasswordReq(email).expect(302)
|
||||
expect(res.header.location).to.endWith(
|
||||
'/forgot-password?errorCodes=INVALID_EMAIL'
|
||||
)
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
context('when email is not verified', () => {
|
||||
|
||||
@ -1,23 +1,15 @@
|
||||
import { Job } from 'bullmq'
|
||||
import chai, { expect } from 'chai'
|
||||
import 'mocha'
|
||||
import sinon from 'sinon'
|
||||
import sinonChai from 'sinon-chai'
|
||||
import { expect } from 'chai'
|
||||
import { Filter } from '../../src/entity/filter'
|
||||
import { StatusType, User } from '../../src/entity/user'
|
||||
import { SendEmailJobData } from '../../src/jobs/send_email'
|
||||
import { authTrx, getRepository } from '../../src/repository'
|
||||
import { findProfile } from '../../src/services/profile'
|
||||
import { deleteUser } from '../../src/services/user'
|
||||
import * as createTask from '../../src/utils/createTask'
|
||||
import {
|
||||
createTestUser,
|
||||
createUserWithoutProfile,
|
||||
deleteFiltersFromUser,
|
||||
} from '../db'
|
||||
|
||||
chai.use(sinonChai)
|
||||
|
||||
describe('create user', () => {
|
||||
context('creates a user through manual sign up', () => {
|
||||
it('adds the default filters to the user', async () => {
|
||||
@ -96,17 +88,9 @@ describe('create user', () => {
|
||||
|
||||
context('create a user with pending confirmation', () => {
|
||||
const name = 'pendingUser'
|
||||
let fake: (
|
||||
jobData: SendEmailJobData
|
||||
) => Promise<Job<any, any, string> | undefined>
|
||||
|
||||
context('when email sends successfully', () => {
|
||||
beforeEach(() => {
|
||||
fake = sinon.replace(createTask, 'enqueueSendEmail', sinon.fake())
|
||||
})
|
||||
|
||||
afterEach(async () => {
|
||||
sinon.restore()
|
||||
const user = await getRepository(User).findOneBy({ name })
|
||||
await deleteUser(user!.id)
|
||||
})
|
||||
@ -117,12 +101,6 @@ describe('create user', () => {
|
||||
expect(user.status).to.eql(StatusType.Pending)
|
||||
expect(user.name).to.eql(name)
|
||||
})
|
||||
|
||||
it('sends an email to the user', async () => {
|
||||
await createTestUser(name, undefined, undefined, true)
|
||||
|
||||
expect(fake).to.have.been.calledOnce
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user