Я пытаюсь исправить тест, но поскольку мы запускаем тесты случайным образом, change_requests
оказывается случайным, поэтому ожидаемый хеш в блоке before do всегда заканчивается неудачей.
Пример ошибки:
Diff:
@@ -1,4 +1,4 @@
-:change_requests => [0, 0],
+:change_requests => [23, 24],
Тест:
let(:expected_hash) do
{
from_admin_user: user.first_name,
station_id: station.id,
ten_minutes_before_reminder: false,
one_hour_after_reminder: false,
change_requests: [0, 0],
one: requests[0][:new_price],
two: 'NO CHANGE',
three: 'NO CHANGE',
four: requests[1][:new_price],
price_change_at_time: nil
}
end
before do
expect(PriceChangeService).to receive(:new) do |hash|
expect(hash).to eq expected_hash
price_change_service
end
end
Можно ли это решить, например, добавив случайное совпадение чисел в change_requests
значение?