Тестирование Rails rspec возвращает пустой массив - PullRequest
0 голосов
/ 26 ноября 2018

Я хочу отфильтровать список фильмов по формату.Это работает правильно на мой взгляд - показывает только фильмы в формате DVD.Положения операторов также показывают правильный ответ в терминале.Мой тест rspec должен найти первый фильм по идентификатору, но не удается, поскольку он возвращает пустой массив.

Код контроллера:

movie_response = #APICALL returns JSON array of movies
dvd_format = []

movie_response.each do |found_movies|

 if found_movies.format == "DVD"
  dvd_format << found_movies
 end
 movie_response = @application.movies
end

@application.movies = movie_response

Однако я знаю, что тест Rspec работает, поскольку он находит первыйфильм по идентификатору, когда я не использую фильтр DVD с кодом ниже.

Код контроллера:

movie_response = #APICALL returns JSON array of movies

@application.movies = movie_response

Может ли кто-нибудь подтолкнуть меня в правильном направлении?Спасибо

1 Ответ

0 голосов
/ 26 ноября 2018

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

Я обычно использую https://github.com/bblimke/webmock для имитации внешних вызовов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...