Rspec тест CSV файл скачать

Я хочу, чтобы в моей загрузке CSV содержались правильные столбцы. Когда я тестирую загрузку CSV с помощью RSpec, я не могу получить доступ к содержимому файла. Как получить доступ к содержимому файла CSV?

require 'spec_helper'
include Devise::TestHelpers

describe Admin::ApplicationsController do

  before(:each) do
    @application = FactoryGirl.create :application
    @user = FactoryGirl.create( :admin_user )
    sign_in @user
  end

  it "downloads a csv"
  it "gives us only the columns we want" do
    get :index, format: :csv
    p response.body
    p response.headers
  end
end

Выход теста:

# This is the output in the terminal
# ""
# {"Content-Type"=>"text/csv; charset=utf-8", "Content-Disposition"=>"attachment; filename=\"applications-2013-12-17.csv\""}

Ответ 1

В вашем блочном вызове render_views, как в:

describe Admin::ApplicationsController do
  render_views
  ... # all the other code
end

Вызов render_views инструктирует RSpec отображать содержимое представления в спецификации контроллера. Это отключено по умолчанию, потому что, когда вы используете спецификации контроллера, вам обычно не нравится содержимое представления, и это ускоряет выполнение ваших тестов.

Вы можете увидеть официальную документацию для последней версии Rails здесь.