Я пытаюсь проверить несколько условий за одно и то же выполнение, в данном случае это всего лишь post(:create , user: user.attributes)
, но я хотел бы знать, в общем, что лучший подход.Rspec, несколько утверждений по одному и тому же коду
Вот полный пример
describe UsersController do
describe 'CRUDL' do
describe 'create' do
let(:user) { User.new(username: "created") }
let(:response) { post(:create , user: user.attributes) }
it 'should respond with created(201) http message' do
response.code.should == "201"
end
it 'should increment total users count' do
expect{ response }.to change{User.count}.by(1)
end
end
end
expect{ response }.to change{User.count}.by(1)
часть не кажется правильным. Каков был бы правильный подход для проверки многих утверждений по сравнению с тем же самым выполнением кода?
при написании спецификаций, связанных с созданием объектов в БД, я предпочитаю использовать несколько утверждений. Это можно применить здесь. Кстати, вы могли бы ускорить работу, если вы использовали заглушки. – apneadiving