Я пытался высмеивать поведение спасения моих методов, когда метод вызывает ошибку с помощью Flexmock.
begin
adwords = AdWords::API.new(get_credentials(env))
adwords
rescue AdWords::Error::GoogleInternalError
refresh_application_token!
retry
end
И мой тест ...
adwords_mock = flexmock(AdWords::API)
adwords_mock.should_receive(:new).with('badtoken').and_raise(AdWords::Error::GoogleInternalError, 0).once
adwords_mock.should_receive(:new).with('goodtoken').and_return('valid_adwords_object').once
Однако при выполнении тестов они заканчиваются ошибкой - той самой ошибкой, которую создает макет, и код должен спасать. Есть идеи?