rspec match_array рекурсивно? - PullRequest
       1

rspec match_array рекурсивно?

0 голосов
/ 13 декабря 2018

У меня есть rspec, который выглядит следующим образом:

expect(res).to match_array(expected)

И он не работает с таким выводом:

the missing elements were:   [[:all_reports, [{:match=>"Tech", :title=>"Middle Tech Middle", :url=>"/report_sections/4267"}, {:match=>"Tech", :title=>"High Tech High", :url=>"/report_sections/4265"}]]]
the extra elements were:        [[:all_reports, [{:match=>"Tech", :title=>"High Tech High", :url=>"/report_sections/4265"}, {:match=>"Tech", :title=>"Middle Tech Middle", :url=>"/report_sections/4267"}]]]

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

Я просто делаю match_array на res[0][1] и expected[0][1]?

1 Ответ

0 голосов
/ 13 декабря 2018

Это похоже на работу, но я не уверен, что это идиоматично:

Так как dict на самом деле имеет 2 поля, я использовал:

  expect(res[:all_reports]).to match_array(expected[:all_reports])
  expect(res[:this_report]).to match_array(expected[:this_report])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...