text: const passport = require('../../../passport');
  
  const app = require('../../../../../app');
  const mailer = require('../../../../../services/mailer');
  
  const SettingsService = require('../../../../../services/settings');
  const settings = {
    id: '1',
    moderation: 'PRE',
    wordlist: { banned: ['bad words'], suspect: ['suspect words'] },
  };
  
  const chai = require('chai');
  chai.should();
  chai.use(require('chai-http'));
  const expect = chai.expect;
  
  const UsersService = require('../../../../../services/users');
  
  describe('/api/v1/users/:user_id/email/confirm', () => {
    let mockUser;
  
    beforeEach(() =>
      SettingsService.init(settings)
        .then(() => {
          return UsersService.createLocalUser(
            'ana@gmail.com',
            '123321123',
            'Ana'
          );
        })
        .then(user => {
          mockUser = user;
        })
    );
  
    describe('#post', () => {
      it('should send an email when we hit the endpoint', () => {
        expect(mailer.task.tasks).to.have.length(0);
  
        return chai
          .request(app)
          .post(`/api/v1/users/${mockUser.id}/email/confirm`)
          .set(passport.inject({ role: 'ADMIN' }))
          .then(res => {
            expect(res).to.have.status(204);
            expect(mailer.task.tasks).to.have.length(1);
          });
      });
  
      it('should send a 404 on not matching a user', () => {
        return chai
          .request(app)
          .post(`/api/v1/users/${mockUser.id}/email/confirm`)
          .set(passport.inject({ role: 'ADMIN' }))
          .then(res => {
            expect(res).to.have.status(204);
            expect(mailer.task.tasks).to.have.length(1);
          });
      });
    });
  });
  