prepare
set params to Post method
let(:attributes) {
author: 'n350071',
publisher: 'my publish'
}
subject { post :create, book: attributes }
set params to Get method
let(:params) {
author: 'n350071'
}
subject { get :index, params }
set session
before { session[:book_id] = book.id }
Assertion
send_file: downnload
expect(response.headers['Content-Type']).to eq 'application/zip'
expect(response.headers['Content-Type']).to eq 'application/pdf'
expect(response.headers['Content-Type']).to eq 'application/doc'
status & render & redirect_to
expect(response.status).to eq 200
expect(response).to render_template :new
expect(response.status).to eq 302
expect(response).to redirect_to(new_book_path)
404 test
The 404.html is stored in 'public/404.html'.
describe '#show' do
context 'the resource is not found' do
it 'should render 404' do
get :file_download
expect(response.status).to eq 404
expect(response).to render_template(file: Rails.root.join('public','404.html'))
end
end
end
JSON response
it 'should respond JSON and returns message Hello' do
json_data = JSON.parse(response.body)
expect(json_data['message']).to eq 'Hello'
end
Top comments (0)