Seletores de itens de teste

Às vezes, você tem um controlador que coleta os itens do banco de dados. Em um dia, alguém decidirá adicionar um tipo com testes também. Mas podemos fazer testes que provavelmente não é uma boa ideia mudar sempre. Provavelmente não é um protip, mas é uma boa abordagem ter testes limpos.

let!(:articles) {  2.times.map { create(:article) } }

before
do
get :index
end

it
'should pick up items' do
collection
= assigns(:articles)
expect
(collection).to have(2).items
expect
(collection).to include(articles[0])
expect
(collection).to include(articles[1])
end

Agora é possível escrever um teste extra para verificar o escopo padrão para classificação como exemplo em vez de atualizar os testes existentes.