Rspec测试CSV文件下载

 手机用户2502939543 发布于 2023-02-09 18:52

我想确保我的CSV下载包含正确的列.当我使用RSpec测试CSV下载时,我无法访问文件内容.如何访问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\""}

Maurício Lin.. 7

在您的describe块调用中,render_views如:

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

调用render_views指示RSpec在控制器规范内呈现视图内容.默认情况下这是关闭的,因为当您运行控制器规范时,通常不关心视图内容,这会使您的测试运行得更快.

您可以在此处查看最新Rails版本的官方文档.

1 个回答
  • 在您的describe块调用中,render_views如:

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

    调用render_views指示RSpec在控制器规范内呈现视图内容.默认情况下这是关闭的,因为当您运行控制器规范时,通常不关心视图内容,这会使您的测试运行得更快.

    您可以在此处查看最新Rails版本的官方文档.

    2023-02-09 18:54 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有