【问题标题】:Error no implicit conversion of Hash into String, on using Rack::Test::UploadedFile in rspec错误没有将哈希隐式转换为字符串,在 rspec 中使用 Rack::Test::UploadedFile
【发布时间】:2018-05-14 07:03:41
【问题描述】:

我正在从 Rails 4 和 Ruby 2.1.10 升级到 Rails 5.0.6 和 Ruby 2.3.3。

由于 ActionDispatch::Http::UploadedFile 在 rails 5 中已弃用,我正在使用新方法:

it "should create candidate" do
  file = Rack::Test::UploadedFile.new({filename: 'example.csv', type: 'text/csv', tempfile: File.new("#{Rails.root}/spec/files/example.csv")})
  Candidate.import_csv(file)
  expect(Candidate.find_by(name: "Stack Overflow").email).to eq "test@stackoverflow.com"
end  

我收到此错误:

TypeError: no implicit conversion of Hash into String

问题是随机执行测试引起的吗?

【问题讨论】:

标签: ruby-on-rails rspec ruby-on-rails-5


【解决方案1】:

感谢马雷克 (https://stackoverflow.com/users/1279683/marek-lipka)

file = Rack::Test::UploadedFile.new( Rails.root + 'spec/files/example.csv', 'example.csv' )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 2021-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多