Rspec mongoid - тестирование встроенного обратного вызова документа (after_save)

1
задан dvirgre 5 March 2019 в 16:48
поделиться

2 ответа

Прежде всего, вы должны доверять mongoid звонить after_save и тестировать my_callback_method в изоляции.

Теперь, как сказано в комментариях, что вы хотите проверить, удалил ли кто-то after_save, вы можете добавить тест для:

RSpec.describe Author, :type => :model do
  context "Author" do
    it "should define my_callback_method for after_save" do
      result = Author._save_callbacks.select { |cb| cb.kind.eql?(:after) }.collect(&:filter).include?(:my_callback_method)
      expect(result).to eq true
    end
  end
end
0
ответ дан It-Z 5 March 2019 в 16:48
поделиться

Ваш код выглядит правильно, но в Mongoid есть ряд нерешенных проблем, связанных с постоянными обратными вызовами. Убедитесь, что обратный вызов вызывается при нормальной работе (т. Е. При сохранении сообщения из консоли Rails).

0
ответ дан Oleg P 5 March 2019 в 16:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: