Commit graph

77 commits

Author SHA1 Message Date
Pierre de La Morinerie
65809f8ea0 config: flip action_dispatch_return_only_media_type_on_content_type
This makes `ActionDispatch::Controller#content_type` return not only
the MIME type, but also in some circumstances the charset.

Example:

```ruby
reponse.content_type == 'text/html; charset=utf-8'
```

The MIME type-only fragment can now be accessed using `#media_type`.

Changes to the tests are not stricly necessary (because no charset is
present in the actual value), but represent the intent better.
2020-08-05 16:48:36 +02:00
clemkeirua
c772c3454c update dossier after saving champ
update last_champ_updated_at without hook
update last_champ_private_updated_at without hook

Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:18:44 +02:00
Christophe Robillard
b940d2e1b0 update dossier after saving avis
update last_avis_updated_at without hook

Co-authored-by: clemkeirua <clement@keiruaprod.fr>
2020-07-30 10:18:44 +02:00
clemkeirua
f3a675c3bc update dossier after saving commentaire
update last_commentaire_updated_at without hook

Co-authored-by: Christophe Robillard <christophe.robillard@beta.gouv.fr>
2020-07-30 10:18:44 +02:00
clemkeirua
c91e231347 spec: replace reference to ds in password 2020-07-23 16:20:16 +02:00
Christophe Robillard
169b8c9b3e explicite revive meaning 2020-07-21 10:51:53 +02:00
Christophe Robillard
d9cb5c067f relance un expert 2020-07-20 16:26:16 +02:00
Christophe Robillard
52e8f32e19 expert can only revoke avis claimed by him/her 2020-07-16 21:07:20 +02:00
Christophe Robillard
3ea34834a7 revoke expert avis 2020-07-16 21:05:11 +02:00
Christophe Robillard
f631acd118 update state date in aasm after callbacks
call aasm event methods, not state methods directly
2020-07-08 18:15:15 +02:00
Pierre de La Morinerie
975d1648d5 dossier: fix PDF rendering of effectif_mensuel
The effectif_mensuel was a number, it needs to be converted explicitely
into a string.

As a bonus, `nil.to_s` is `""`, so we can remove the special case for
nil.
2020-07-06 11:41:25 +02:00
Myriam
0f542527fb Instructeur : add overview table with counts for files
- changement du design
- tableau visible seulement si plus d'une procédure
2020-07-02 09:02:49 +00:00
Myriam
a486fe9a2e Instructeur : add overview table with counts for files
nombre total de dossier :
- 'à suivre'
- 'suivi'
- 'traité'
- 'dossier'
- 'archivé'
2020-07-02 09:02:49 +00:00
Pierre de La Morinerie
43569f687e specs: use fixture_file_upload rather than Rack::Test::UploadedFile
This is mostly for consistency (both styles were used before).

Note: we still have to use `Rack::Test::UploadedFile.new` in factories,
because of https://github.com/thoughtbot/factory_bot/issues/385.
2020-07-01 11:13:45 +02:00
Christophe Robillard
1d86f863d3 rename avis#all to avis#index 2020-06-30 09:17:27 +02:00
Christophe Robillard
bbec76d33b rename avis#index to avis#procedure 2020-06-30 09:17:27 +02:00
Christophe Robillard
63dd71aed4 display all avis for an expert 2020-06-30 09:17:27 +02:00
Christophe Robillard
29e2d3d7eb display all avis for a procedure for an expert 2020-06-30 09:17:27 +02:00
Christophe Robillard
c565c9c87b refactor sign_up_instructeur_avis_url 2020-06-30 09:17:27 +02:00
Christophe Robillard
4839506374 refactor instructeur_avis_url 2020-06-30 09:17:27 +02:00
Christophe Robillard
b0cfb2c02a refactor messagerie_instructeur_avis_url 2020-06-30 09:17:27 +02:00
Christophe Robillard
83fba55b29 refactor instruction_instructeur_avis_url 2020-06-30 09:17:27 +02:00
Christophe Robillard
72d27ffdb2 replace instructeur_avis_index url by instructeur_all_avis url 2020-06-30 09:17:27 +02:00
Christophe Robillard
dcb9afaf25 refactor expert avis url : fix avis_controller_spec 2020-06-30 09:17:27 +02:00
Christophe Robillard
3e1afa8bf9 fix avis spec 2020-06-30 09:17:27 +02:00
Christophe Robillard
aab4bb81ee return bilan bdf csv for expert 2020-05-11 13:05:50 +02:00
Pierre de La Morinerie
32ad152347 specs: ensure that discarded procedures are not shown 2020-04-22 19:01:26 +02:00
Pierre de La Morinerie
abe692ecc2 specs: refactor instructeur procedures controller specs 2020-04-22 19:01:16 +02:00
Pierre de La Morinerie
f29ec5c775 instucteurs: don't show discarded procedures in the list 2020-04-22 15:16:21 +02:00
Pierre de La Morinerie
15645e11e3 instructeur: improve InstructeurController#index test 2020-04-22 15:12:34 +02:00
Paul Chavard
60cb9bcf09 Remove brouillons deleted dossiers 2020-03-31 16:54:33 +02:00
Pierre de La Morinerie
4cb747fdb6 specs: always require rails_helper
Test helpers are separated between two files: spec_helper and
rails_helper. This separation is meant to allow tests that do not
require Rails (like testing standalone libs) to boot faster.

The spec_helper file is always loaded, through `--require spec_helper`
in the `.rspec` config file. When needed, the rails_helper file is
expected to be required manually.

This is fine, but:
- Many test files have a redundant `require 'spec_helper'` line;
- Many test files should require `rails_helper`, but don't.

Not requiring `rails_helper` will cause the Rails-concerned section of
the test environment not to be configured–which may cause subtle bugs
(like the test database not being properly initialized).

Moreover, Spring loads all the Rails files on preloading anyway. So the
gains from using only `spec_helper` are thin.

To streamline this process, this commit:
- Configures `.rspec` to require `rails_helper` by default;
- Remove all manual requires to spec_helper or rails_helper.

Reference: https://stackoverflow.com/questions/24145329/how-is-spec-rails-helper-rb-different-from-spec-spec-helper-rb-do-i-need-it
2020-03-31 12:48:32 +02:00
Christophe Robillard
b4b92accf1 instructeur: show deleted dossiers for a procedure 2020-03-25 10:19:07 +01:00
kara Diaby
b32ed88f9b add attachment when instructor asking for a review 2020-03-04 13:35:29 +00:00
kara Diaby
4a70a7fcc8 remove email_notifications_enabled column because of the new daily_email_notifications_enabled 2020-02-27 11:09:19 +01:00
Paul Chavard
7afeae1408 remove dossier.linked_dossiers 2020-02-11 17:49:22 +01:00
Pierre de La Morinerie
5d0a8b567f specs: improve description of Avis creation test cases 2020-02-11 17:38:58 +01:00
Paul Chavard
f0ea96772d Only invite experts to dossiers instructeur have access to 2020-02-11 17:38:57 +01:00
Paul Chavard
08400cdd4c Poll for export readiness updates 2020-01-29 22:52:03 +01:00
Pierre de La Morinerie
6a47458112 specs: use order-insentitive matching for arrays
The specs sometime failes locally, because the order of the returned
objects is undefined.

This is an acceptable behavior – but it means we should test for
collection membership, rather than for a specific array order.

Replace `match` by `match_array` to have unordered matching.
2020-01-21 17:24:56 +01:00
clemkeirua
0c2ccb4ae0 added automated tests for PDF rendering
- as a user, it should not display the administration info
 - as an instructeur, it should display the administration info
 - it should render the proper view with no crash
2020-01-14 09:29:29 +01:00
Paul Chavard
c6326bfa77 Fix tests involving attachment urls 2020-01-08 14:46:18 +01:00
Pierre de La Morinerie
8eb295d67e dossiers: avoid exceptions on invalid AASM transitions
When attempting an invalid transition on a dossier, provide a meaningful
error message (instead of letting an `AASM::InvalidTransition` exception
propagate).

This handles not only the case where the same state is applied twice
(which was already handled manually), but all cases where the transition
is invalid.
2019-12-19 13:25:32 +01:00
simon lehericey
60538c9c28 Controller use new export model 2019-12-18 13:13:15 +01:00
simon lehericey
d0f0533a32 Remove unused code 2019-12-18 13:13:15 +01:00
Paul Chavard
7b947feae4 Rename demarche archivée to demarche close 2019-11-28 15:07:16 +01:00
Paul Chavard
0c6705f7fd Drop old export service 2019-11-21 10:25:40 +01:00
Christophe Robillard
b42f21264e permet le suivi auto après envoi instructeur
Close #4163
2019-11-20 16:41:30 +01:00
Pierre de La Morinerie
d78d206544 instructeurs: fix expert creation not to use Instructeur.email
It kind of worked until now, because the email field is disabled, and
thus never accessed.

But better make it clean, by accessing an object (User) where the email
field actually exists.
2019-11-04 10:44:24 +01:00
Pierre de La Morinerie
a462edb9bc instructeurs: alias instructeur.email
This also means we need to replace instances of `pluck` on the email
column.
2019-11-04 10:44:24 +01:00