export demarches publiques
This commit is contained in:
parent
fa1cbdc848
commit
7684e97494
2 changed files with 144 additions and 0 deletions
45
spec/services/demarches_publiques_export_service_spec.rb
Normal file
45
spec/services/demarches_publiques_export_service_spec.rb
Normal file
|
@ -0,0 +1,45 @@
|
|||
describe DemarchesPubliquesExportService do
|
||||
let(:procedure) { create(:procedure, :published, :with_service, :with_type_de_champ) }
|
||||
let(:io) { StringIO.new }
|
||||
|
||||
describe 'call' do
|
||||
it 'generate json for all closed procedures' do
|
||||
expected_result = {
|
||||
number: procedure.id,
|
||||
title: procedure.libelle,
|
||||
description: "Demande de subvention à l'intention des associations",
|
||||
service: {
|
||||
nom: procedure.service.nom,
|
||||
organisme: "organisme",
|
||||
typeOrganisme: "association"
|
||||
},
|
||||
cadreJuridique: "un cadre juridique important",
|
||||
deliberation: nil,
|
||||
datePublication: procedure.published_at.iso8601,
|
||||
revision: {
|
||||
champDescriptors: [
|
||||
{
|
||||
description: procedure.types_de_champ.first.description,
|
||||
label: procedure.types_de_champ.first.libelle,
|
||||
options: nil,
|
||||
required: false,
|
||||
type: "text",
|
||||
champDescriptors: nil
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
DemarchesPubliquesExportService.new(io).call
|
||||
expect(JSON.parse(io.string)[0]
|
||||
.deep_symbolize_keys)
|
||||
.to eq(expected_result)
|
||||
end
|
||||
it 'raises exception when procedure with bad data' do
|
||||
procedure.libelle = nil
|
||||
procedure.save(validate: false)
|
||||
|
||||
expect { DemarchesPubliquesExportService.new(io).call }.to raise_error(DemarchesPubliquesExportService::Error)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue