Тайм-аут супер тестового модуля, когда контроллер устанавливает данные сеанса - PullRequest
0 голосов
/ 10 июня 2019

Я пытаюсь запустить модульное тестирование в моем приложении, но тайм-аут модульного теста. Когда я углубился в это, я обнаружил, что время ожидания, когда приложение пытается установить данные сеанса. Если я удаляю строку кода установки сеанса, модульное тестирование продолжается (но не удается, поскольку требуются данные сеанса).

// unit test code;
describe('Check if endpoint are reachable', () => {

  before(function(done) {
    // call /router to generate session;
    AGENT.get('/router')
        .query(clientData)
        .expect(302)
        .end((err, res) => {
            if (!err) {
                done()
            } else {
                done(err);
            }
        });
  });

  //  .......

});


// controller code where the session is set;

// .....

req.session.clientData = clientData;

// ....

Когда я запускаю код, я получаю следующую ошибку: Ошибка: превышено время ожидания 2000 мс. Для асинхронных тестов и хуков убедитесь, что вызывается «done ()»; если вы возвращаете обещание, убедитесь, что оно разрешено. (C: \ Недбанк \ аа-serverui \ приложения \ тесты \ authorise.js)

Но если я закомментирую строку настройки сеанса (// req.session.clientData = clientData;), тогда тест продолжится, как и ожидалось.

...