Admin can be transfer a clone of a procédure at an other admin
This commit is contained in:
parent
e7830deefa
commit
2ad816b6b3
9 changed files with 137 additions and 20 deletions
|
@ -77,7 +77,7 @@ describe Admin::ProceduresController, type: :controller do
|
|||
subject
|
||||
end
|
||||
|
||||
it { expect { subject }.to change{Procedure.count}.by(-1) }
|
||||
it { expect { subject }.to change { Procedure.count }.by(-1) }
|
||||
end
|
||||
|
||||
context 'when procedure is published' do
|
||||
|
@ -451,4 +451,38 @@ describe Admin::ProceduresController, type: :controller do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'POST transfer' do
|
||||
let!(:procedure) { create :procedure, administrateur: admin }
|
||||
|
||||
subject { post :transfer, email_admin: email_admin, procedure_id: procedure.id }
|
||||
|
||||
context 'when admin is unknow' do
|
||||
let(:email_admin) { 'plop' }
|
||||
|
||||
it { expect(subject.status).to eq 404 }
|
||||
end
|
||||
|
||||
context 'when admin is know' do
|
||||
let(:new_admin) { create :administrateur, email: 'new_admin@admin.com' }
|
||||
let(:email_admin) { new_admin.email }
|
||||
|
||||
it { expect(subject.status).to eq 200 }
|
||||
|
||||
it 'procedure clone is called' do
|
||||
expect_any_instance_of(Procedure).to receive(:clone)
|
||||
subject
|
||||
end
|
||||
|
||||
it { expect {subject}.to change(Procedure, :count).by(1) }
|
||||
|
||||
context {
|
||||
before do
|
||||
subject
|
||||
end
|
||||
|
||||
it { expect(Procedure.last.administrateur).to eq new_admin }
|
||||
}
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue