Я добавляю тесты в приложение Rails, которое удаляет файлы. Я использую функциональные тесты Rails по умолчанию. Как добавить файлы к ним? У меня есть:
test "create valid person" do
post(:create, :person => { :avatar => fixture_file_upload('avatar.jpeg') })
end
Это почему-то загружает Tempfile
и приводит к сбою при создании AWS/S3
gem с помощью:
NoMethodError: undefined method `bytesize' for Tempfile
Является ли это тем, что я могу получить тест, чтобы использовать ActionDispatch::Http::UploadedFile
и выполнять больше, как при тестировании с помощью веб-браузера? Является ли fixture_file_upload
способ проверки загрузки файлов на контроллер? Если да, то почему он не работает, как браузер?
В качестве примечания я действительно не хочу переключать тестовые рамки. Спасибо!