From 5eff915b9d7d4fcfe73c40cac99e4d3ad2410f64 Mon Sep 17 00:00:00 2001 From: Mathieu Magnin Date: Thu, 5 Oct 2017 10:50:44 +0200 Subject: [PATCH] Add initiated_at to DossiersSerializer --- app/serializers/dossiers_serializer.rb | 3 ++- doc/apipie_examples.json | 3 ++- spec/controllers/api/v1/dossiers_controller_spec.rb | 5 +++-- spec/factories/dossier.rb | 6 +++++- 4 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/serializers/dossiers_serializer.rb b/app/serializers/dossiers_serializer.rb index e43f4b63d..34110603e 100644 --- a/app/serializers/dossiers_serializer.rb +++ b/app/serializers/dossiers_serializer.rb @@ -1,4 +1,5 @@ class DossiersSerializer < ActiveModel::Serializer attributes :id, - :updated_at + :updated_at, + :initiated_at end diff --git a/doc/apipie_examples.json b/doc/apipie_examples.json index e88b2a84c..b5a9928b5 100644 --- a/doc/apipie_examples.json +++ b/doc/apipie_examples.json @@ -13,7 +13,8 @@ { "id": 2, "nom_projet": "Demande de subvention dans le cadre d'accompagnement d'enfant à l'étranger", - "updated_at": "2008-09-01T08:05:00.000Z" + "updated_at": "2008-09-01T08:05:00.000Z", + "initiated_at": "2008-09-02T08:05:00.000Z" } ], "pagination": { diff --git a/spec/controllers/api/v1/dossiers_controller_spec.rb b/spec/controllers/api/v1/dossiers_controller_spec.rb index 63c293550..e43343325 100644 --- a/spec/controllers/api/v1/dossiers_controller_spec.rb +++ b/spec/controllers/api/v1/dossiers_controller_spec.rb @@ -25,7 +25,7 @@ describe API::V1::DossiersController do context 'when procedure is found and belongs to admin' do let(:procedure_id) { procedure.id } let(:date_creation) { Time.utc(2008, 9, 1, 10, 5, 0) } - let!(:dossier) { Timecop.freeze(date_creation) { create(:dossier, :with_entreprise, procedure: procedure, state: 'initiated') } } + let!(:dossier) { Timecop.freeze(date_creation) { create(:dossier, :with_entreprise, :initiated, procedure: procedure) } } let(:body) { JSON.parse(retour.body, symbolize_names: true) } it 'return REST code 200', :show_in_doc do @@ -53,7 +53,8 @@ describe API::V1::DossiersController do subject { super().first } it { expect(subject[:id]).to eq(dossier.id) } it { expect(subject[:updated_at]).to eq("2008-09-01T10:05:00.000Z") } - it { expect(subject.keys.size).to eq(2) } + it { expect(subject[:initiated_at]).to eq("2008-09-01T10:06:00.000Z") } + it { expect(subject.keys.size).to eq(3) } end end diff --git a/spec/factories/dossier.rb b/spec/factories/dossier.rb index 036d498ca..231e8e8ce 100644 --- a/spec/factories/dossier.rb +++ b/spec/factories/dossier.rb @@ -73,7 +73,11 @@ FactoryGirl.define do end trait :initiated do - state 'initiated' + after(:create) do |dossier, _evaluator| + dossier.state = 'initiated' + dossier.initiated_at = dossier.created_at + 1.minute + dossier.save! + end end end end