перед тем, как ловушка не работает должным образом, как я могу исправить эту ошибку мокко? - PullRequest
0 голосов
/ 10 февраля 2020

Это мои организации. js file:

let accessToken;
before(async () => {
    accessToken = await authenticate();
    console.log(accessToken);
})

describe('API endpoint /organizations', () => {
    describe('Should return all organizations', () => {
        it('Should return all organizations', (done) => {

            chai.request(app)
                .get('/api/v1/organisations?expand=services,users')
                .set('x-access-token', accessToken)
                .then((res) => {
                    expect(res).to.have.status(200);
                    expect(res).to.be.json;
                    expect(res.body).to.be.an('object');
                    done();
                }).catch(done);
        });
    })
});

Это функция аутентификации в другом файле (authenticate. js):

const authenticate = () => {
  return new Promise((resolve) => {
    if (accessToken) {
      resolve(accessToken);
    } else {
      describe('API endpoint /authenticate/login', () => {
        it('Should login and get accessToken', (done) => {
          chai.request(baseURL).post('/api/v1/authenticate/login').send(credentials).then((res) => {
            expect(res).to.have.status(200);
            expect(res).to.be.json;
            expect(res.body).to.be.an('object');
            accessToken = res.body.data.token;
            resolve(accessToken);
            done();
          })
        })
      })
    }
  })
};

I'm использование этой команды для запуска тестов: mocha --recursive --timeout 10000.

Я не понимаю, почему я получаю эту ошибку при запуске их Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.

Есть несколько вопросов, подобных этому, но ни один из них мне помогли.

...