spec: Dossier.purge_discarded

This commit is contained in:
simon lehericey 2023-11-28 15:00:24 +01:00
parent ba92216504
commit 92da869662
No known key found for this signature in database
GPG key ID: CDE670D827C7B3C5

View file

@ -0,0 +1,33 @@
describe Dossier, type: :model do
describe '.purge_discarded' do
it 'discards brouillon, en_construction and termine' do
[
:en_brouillon_expired_to_delete,
:en_construction_expired_to_delete,
:termine_expired_to_delete
].each do |scope|
dossier = double(purge_discarded: true)
expect(dossier).to receive(:purge_discarded)
collection = double(find_each: true)
expect(collection).to receive(:find_each) { |&block| block.call(dossier) }
expect(Dossier).to receive(scope).and_return(collection)
end
Dossier.purge_discarded
end
end
describe '#purge_discarded' do
let(:dossier) { create(:dossier) }
it 'creates a deleted dossier, purge the dols and then destroy' do
expect(DeletedDossier).to receive(:create_from_dossier)
expect(dossier.dossier_operation_logs).to receive(:purge_discarded)
expect(dossier).to receive(:destroy)
dossier.purge_discarded
end
end
end