【发布时间】:2015-10-28 12:52:02
【问题描述】:
是否可以检查get请求是否呈现文本?
我知道有像response.body == 'any string' 这样的黑客,但我不感兴趣。我只是想知道是否有“RSpec™”方法来做到这一点。
拥有这个 rspec:
RSpec.describe MyController, type: :controller do
controller do
def index
render text: 'Hellow'
end
end
describe 'rendering' do
subject { get :index }
it { is_expected.to render_template(text: 'Hellow')}
end
end
我希望能够致电it { is_expected.to render_template(text: 'Hellow')}。它提出:
Failure/Error: it { is_expected.to render_template(text: 'Hellow') }
ArgumentError:
Unknown key: :text. Valid keys are: :layout, :partial, :locals, :count, :file
或者it { is_expected.to render_template('Hellow')}
Failure/Error: it { is_expected.to render_template('Hellow') }
expecting <"Hellow"> but rendering with <[]>
是否有任何 RSpec™ 方法来完成它?
【问题讨论】:
-
尝试添加
render_views,因为RSpec默认does not render views -
RSpec 在这个example 中似乎使用了
response.body == 'Hellow'
标签: ruby-on-rails ruby ruby-on-rails-4 testing rspec