2016-06-07 3 views
1

Я использую jQuery File Upload в качестве элемента ember. Этот плагин имеет API, который позволяет мне взаимодействовать с загрузкой файлов programmatically в тестах. Это отлично работает в тестах компонентов. Однако в Приемочные испытания я получаю эту ошибку:Загрузка файлов приемочных испытаний

Assertion Failed: You have turned on testing mode, which disabled the run-loop's autorun. You will need to wrap any code with asynchronous side-effects in a run

Отрывок из моего теста:

// some steps before this. 

andThen(() => { 
    Ember.run(() => { 
    find('.file-upload').fileupload('send', { files: [{name: 'file.doc' }] }); 
    }); 
    }); 
}); 

Все указатели будут оценены.

ответ

0

Я столкнулся с этим некоторое время назад. Чтобы справиться с этим, вам придется обернуть ваш фактический код компонента (а не тестовый код), который является асинхронным в цикле Ember.run. Это не повлияет на вашу программу, так как это будет объединено с основным циклом запуска приложения.

Это заставляет код выполняться асинхронно во время тестирования.

См. Дополнительную информацию об этом: http://discuss.emberjs.com/t/guide-asynchronous-side-effects-in-testing/2905

Смежные вопросы