2015-06-16 4 views
2

В official documentation вы можете найти следующий код:Почему «Протрактор» иногда возвращает обещание и иногда возвращает значение?

var history = element.all(by.repeater('result in memory')); 
expect(history.count()).toEqual(2); 

Но вы также можете найти examples using promises

element.all(by.repeater('app in userApps')).count().then(function(count) { 
    console.log(count); 
}); 

Так почему же транспортир иногда возвращает обещание, а иногда она возвращает значение?

ответ

2

транспортир люди "заплатки" жасмин, чтобы быть в курсе обещают. то есть оператор ожидания делает утиную печать - если это обещание, он ждет , чтобы он разрешил и выполнил основное утверждение. если это любой другого типа, он выполняет это утверждение, как в любом другом жасмине мира.

source

3

Он всегда возвращает обещание, это просто, что expect пропатчена, чтобы справиться с ними, добавляя их к control-flow так, что они получают казнены и решены в правильном порядке.

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