Merge pull request #7992 from demarches-simplifiees/add-file-depose-at-datagouv
Ajoute les dossiers déposés dans les statistiques Datagouv
This commit is contained in:
commit
5867f2cbe7
2 changed files with 38 additions and 0 deletions
19
app/jobs/cron/datagouv/file_depose_by_month_job.rb
Normal file
19
app/jobs/cron/datagouv/file_depose_by_month_job.rb
Normal file
|
@ -0,0 +1,19 @@
|
|||
class Cron::Datagouv::FileDeposeByMonthJob < Cron::CronJob
|
||||
include DatagouvCronSchedulableConcern
|
||||
self.schedule_expression = "every month at 3:00"
|
||||
FILE_NAME = "nb_dossiers_deposes_par_mois"
|
||||
|
||||
def perform(*args)
|
||||
GenerateOpenDataCsvService.save_csv_to_tmp(FILE_NAME, data) do |file|
|
||||
begin
|
||||
APIDatagouv::API.upload(file, :statistics_dataset)
|
||||
ensure
|
||||
FileUtils.rm(file)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def data
|
||||
Dossier.where(depose_at: 1.month.ago.beginning_of_month..1.month.ago.end_of_month).count
|
||||
end
|
||||
end
|
19
spec/jobs/cron/datagouv/file_depose_by_month_job_spec.rb
Normal file
19
spec/jobs/cron/datagouv/file_depose_by_month_job_spec.rb
Normal file
|
@ -0,0 +1,19 @@
|
|||
RSpec.describe Cron::Datagouv::FileDeposeByMonthJob, type: :job do
|
||||
let!(:dossier) { create(:dossier, created_at: 1.month.ago) }
|
||||
let(:status) { 200 }
|
||||
let(:body) { "ok" }
|
||||
let(:stub) { stub_request(:post, /https:\/\/www.data.gouv.fr\/api\/.*\/upload\//) }
|
||||
|
||||
describe 'perform' do
|
||||
before do
|
||||
stub
|
||||
end
|
||||
|
||||
subject { Cron::Datagouv::FileByMonthJob.perform_now }
|
||||
|
||||
it 'send POST request to datagouv' do
|
||||
subject
|
||||
expect(stub).to have_been_requested
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue