Damien Le Thiec
8a7cb3f1fe
Merge branch 'main' into fix/stored_query_issue
2023-03-01 10:22:40 +01:00
Damien Le Thiec
01f142183e
Add and correct tests
2023-03-01 10:21:22 +01:00
sebastiencarceles
f52554b5a3
review: update value with async fetch
...
1 - spec cover the job which fetches external data
2 - refactor the job with guard clauses
3 - delegate update operation to the champ itself
4 - annuaire education: override the update operation
to let the value be populated by the fetched data
5 - prefilling: don't fetch data synchronously
2023-02-28 14:53:08 +01:00
sebastiencarceles
8b25503f7e
feature spec cover
2023-02-28 14:23:38 +01:00
sebastiencarceles
8f12467168
feature spec cover
2023-02-27 15:18:37 +01:00
sebastiencarceles
1caf56d943
fix lint
2023-02-27 14:48:46 +01:00
sebastiencarceles
efd5464bd5
cover use case with feature spec
2023-02-27 14:43:48 +01:00
sebastiencarceles
becf4da70a
fix raison social fetch
2023-02-27 13:54:35 +01:00
sebastiencarceles
498e5d7487
cover use case with a feature spec
2023-02-27 13:53:18 +01:00
sebastiencarceles
bd1bed940c
feature spec cover
2023-02-27 12:20:11 +01:00
Damien Le Thiec
fbe4fe251a
Fix format prefill repetition
2023-02-22 19:32:25 +01:00
Damien Le Thiec
2052bc7840
Remove dependency type_de_champ -> procedure
2023-02-21 16:00:58 +01:00
Damien Le Thiec
dce4c84f9a
Merge branch 'main' into feature/prefill_repetible
2023-02-16 17:08:30 +01:00
sebastiencarceles
a3ca79076e
cover the use case with feature specs
2023-02-16 10:49:15 +01:00
Damien Le Thiec
539b9e4f10
Merge branch 'main' into feature/prefill_repetible
2023-02-15 17:53:06 +01:00
Damien Le Thiec
4876d583b6
Merge branch 'main' into feature/prefill_repetible
2023-02-15 17:39:19 +01:00
Damien Le Thiec
4b3d403d7e
fix spec
2023-02-15 17:14:29 +01:00
sebastiencarceles
8aa31522b6
cover feature with specs
2023-02-15 12:14:11 +01:00
Damien Le Thiec
dbb92e7fd3
Merge branch 'main' into feature/prefill_repetible
2023-02-11 22:40:56 +01:00
Damien Le Thiec
4b0e6ea382
Convert datetime field to datetime_local ( #8572 )
...
* Convert datetime field to datetime_local
* Fix tests
* Add value formatting view datetime component
* Add helper datetime component value
2023-02-09 15:18:38 +01:00
sebastiencarceles
7a254d124f
feature spec cover
2023-02-09 13:51:52 +01:00
Paul Chavard
6924b8e46d
feat(dossier): optional repetition champ should not add first row
2023-02-06 11:53:32 +01:00
Damien Le Thiec
63e7c17fda
First tests for prefill repetition
2023-02-03 12:14:18 +01:00
Martin
4f4791a864
bug(liens-invitation): ne devrait pas pointer sur l'avis ayant le même id que l'invitation
2023-01-31 16:33:31 +01:00
Colin Darie
3265fff30e
fix(dropdown): wait "other" input to be disabled before autosave
...
Fix le workflow suivant pour un champ drop down avec option "autre" :
- on choisit la valeur "autre" avec une valeur => ça autosave la bonne valeur
- on choisit finalement une autre valeur proposée => l'autosave envoyait
la nouvelle valeur, et toujours la valeur "other" car l'input n'était pas encore
`disabled`. Par conséquent la valeur other overridait la valeur choisie
et ça provoquait des erreurs en cascade, notamment dans le conditionnel.
2023-01-30 12:16:25 +01:00
Martin
8528939b75
correctif(champs/repetitions#remove): les row id etant des ulid commence par un int. utiliser l'ulid comme selecteur css n'est pas valide. il faut donc avoir un selecteur CSS 'safe', et envoyer le row_id
2023-01-19 10:48:01 +01:00
Damien Le Thiec
5e26acb0e1
Make date and datetime prefillable ( #8304 )
...
* Make date and datetime prefillable
* Format in ISO8601 format
2023-01-12 17:42:02 +01:00
Sébastien Carceles
fa6fc077b4
normalize boolean values ( #8320 )
...
* extract parent for yes no and checkbox champs
* checkbox stores true / false instead of on / off
* normalize blank value to nil
* normalize invalid value to false
* after party task: normalize checkbox values
* after party task: normalize yes_no values
2023-01-05 11:18:27 +00:00
Colin Darie
b89fc16999
style(instructeurs/expiration): convert banner to DSFR
2023-01-04 13:15:10 +01:00
Paul Chavard
6e18090fb3
refactor(virus_scan_result): use column instead of metadata on blob
2023-01-04 12:12:11 +01:00
Martin
a4d6692bc6
accessibilite(pages-authentification): evolutions des pages de connexion/creation de compte pour respecter le DSFR et supporter une meilleure accessibilite
...
Update app/components/dsfr/input_component/input_component.html.haml
Co-authored-by: Colin Darie <colin@darie.eu>
2023-01-03 16:26:05 +01:00
Sébastien Carceles
20136b7ac8
feat(demarche): create and prefill a dossier with POST request ( #8233 )
...
* add base controller for public api
* add dossiers controller with basic checks
* create the dossier
* ensure content-type is json
* prefill dossier with given values
* mark a dossier as prefilled
When a dossier is prefilled, it's allowed not to have a user.
Plus, we add a secure token to the dossier, which we will need later to set a
user after sign in / sign up.
* set user as owner of an orphan prefilled dossier
When a visitor comes from the dossier_url answered by the public api,
the dossier is orphan:
- when the user is already authenticated: they become the owner
- when the user is not authenticated: they can sign in / sign up / france_connect
and then they become the owner
So here is the procedure:
- allow to sign in / sign up / france connect when user is unauthenticated
- set dossier ownership when the dossier is orphan
- check dossier ownership when the dossier is not
- redirect to brouillon path when user is signed in and owner
* mark the dossier as prefilled when it's prefilled
(even with a GET request, because it will be useful later on, for
exmample in order to cleanup the unused prefilled dossiers)
* system spec: prefilling dossier with post request
2023-01-03 14:46:10 +01:00
Paul Chavard
00218fded2
fix(dossier): update spec
2022-12-21 14:03:02 +01:00
Paul Chavard
cb5b60ccda
Revert "Revert "Merge pull request #7907 from tchak/feat-cond-repetitions""
...
This reverts commit 0d10d36cb0
.
# Conflicts:
# app/models/dossier.rb
# app/models/dossier_preloader.rb
2022-12-15 19:09:25 +01:00
Sébastien Carceles
b8ff0ba4a2
feat(demarche): sign up when prefilling a dossier ( #8247 )
...
* store prefill params in session
Instead of using query params on /dossier/new, we assume the user comes
from /commencer/:path, which is the new prefill link.
There, we store the prefill params in session, and use them to prefill
the dossier when creating it, in /dossiers/new.
* spec: cover the case
* review: serialize with json instead of yaml
* review: rename method
* review: store only query params
* review: comment why we dont override already stored params
2022-12-15 10:58:17 +01:00
Colin Darie
3a9a71079a
Merge branch 'main' into pj-en-construction-replace
2022-12-14 16:59:48 +01:00
Paul Chavard
0d10d36cb0
Revert "Merge pull request #7907 from tchak/feat-cond-repetitions"
...
This reverts commit 1900f8ff4c
, reversing
changes made to febffc2d64
.
# Conflicts:
# app/models/dossier.rb
2022-12-14 11:25:45 +01:00
Colin Darie
013a05f24a
feat(piece_justificative): replace with multiple attachments for dossier en_construction
2022-12-14 09:58:15 +01:00
sebastiencarceles
bfdba0c513
review: system spec
2022-12-08 15:27:39 +01:00
Paul Chavard
16a48c02aa
feat(cond): add tests
2022-12-08 09:38:12 +01:00
Colin Darie
8cf8c2c88a
test(attachment): maybe fix flaky test
2022-12-06 16:37:11 +01:00
Colin Darie
53d4395cbd
test(attachments): system test for multiple attachments upload
2022-12-05 10:47:10 +01:00
Colin Darie
cb2afc74b0
style(attachments): better UX when we can try to upload without network
2022-12-05 10:47:10 +01:00
Colin Darie
b13c5e56f6
refactor(piece_justificative): UX follows mockups
2022-12-05 10:47:10 +01:00
Colin Darie
f625d99934
chore(dossier_transfer): extract i18n
2022-11-25 13:34:12 +01:00
sebastiencarceles
c294ce70ca
fix: escape characters when showing page title
2022-11-25 09:30:20 +01:00
Paul Chavard
ff470ada48
fix(dossier): fix dossier brouillon spec
2022-11-23 11:56:35 +01:00
Martin
05dcf5e7cf
amelioration(usager.liste_des_dossier): ajout du bouton pour cloner un dossier
2022-11-14 09:13:54 +01:00
Paul Chavard
e6288c39f2
refactor(dossier): champs -> champs_public
2022-11-10 22:44:39 +00:00
Eric Leroy-Terquem
b419c48262
toggle routing when adding or deleting groupe_instructeurs
2022-11-04 12:03:43 +01:00
simon lehericey
e7666e274f
fix(spec/system): wait for merci page
2022-10-28 14:51:41 +02:00
simon lehericey
d859f1ed0a
fix(spec/system): add delay when dealing with pj
2022-10-28 14:51:41 +02:00
simon lehericey
00d1552060
clean(spec): remove useless autosave
2022-10-25 14:44:43 +02:00
Eric Leroy-Terquem
2147a1865c
add test
2022-10-13 19:49:32 +02:00
Paul Chavard
dd38fa4458
refactor(spec): add wait_for_autosave helper
2022-10-13 14:44:46 +02:00
Paul Chavard
03c714e86d
test(flipper): cleanup flipper calls in tests
2022-10-12 14:14:30 +02:00
Colin Darie
10917af523
style: signin button styled accordingly to UX
2022-10-11 09:50:21 +02:00
Martin
17ed80b18a
clean(Champs::Engagement): migrate to Champs::Checkbox, some for TypeDeChamp
2022-09-27 19:09:28 +02:00
Paul Chavard
d6f5be622c
feat(dossier): autosave en construction
2022-09-08 11:26:29 +02:00
Martin
df3ef23f7e
fix(spec): 1. visit new_user_session_path instead of navigating to it. 2. change way to submit search according to dsfr html. 3. avoid nav without aria label. 4. various lint fixes
2022-09-06 10:09:12 +02:00
Martin
96cdae0dd5
feat(DSFR.header): switch to DSFR header
2022-09-06 10:09:12 +02:00
Martin
c230db1ec4
bug(brouillon.edit.form): when their is a type de champs repetition having a child being mandatory. if the condition is not met, should be able to submit form
2022-08-24 15:18:05 +02:00
simon lehericey
00d0813292
ensure the mandatory star hint is always displayed
2022-08-09 10:29:41 +02:00
simon lehericey
898badb579
a champ is mandatory when visible with a mandatory tdc
2022-08-09 10:25:47 +02:00
simon lehericey
ec40836589
spec
2022-08-08 18:02:28 +02:00
simon lehericey
0b90c81c3a
wrap existing spec in specific context
2022-08-08 18:02:28 +02:00
Paul Chavard
2d7803cd48
refactor(spec): use new procedure.types_de_champ factory
2022-08-04 12:10:32 +02:00
Colin Darie
9ebcbbbd67
test(brouillon_spec): fix random errors due to db champs not yet updated
2022-08-03 16:15:40 +02:00
Colin Darie
e8b088c2c5
test(brouillon_spec): remove unecessary manual sleep, improve "brouillon" feedback testing
2022-08-03 16:15:39 +02:00
Colin Darie
81a9258c8a
test(brouillon_spec): use capybara wait matchers
2022-08-03 16:15:39 +02:00
Colin Darie
983815bfe8
test(brouillon_spec): fix frequent dossier_link error by using an existing dossier
2022-08-03 16:15:39 +02:00
simon lehericey
0d3856e84a
fix(conditional): handle incorrect user input
2022-07-22 15:55:43 +02:00
simon lehericey
d1e3a0d29f
spec
2022-07-20 11:23:57 +02:00
Paul Chavard
982e604b07
feat(dossier): test check conditions on en construction dossier
2022-07-12 18:32:03 +02:00
Paul Chavard
120b593015
feat(dossier): toggle conditional champs visibility
2022-07-12 17:33:42 +02:00
Paul Chavard
a4681d8832
refactor(autosave): improuve events handling
2022-07-12 11:47:33 +02:00
Colin Darie
9768f4e1c9
style(champ): add placeholders for email, iban, phone, siret champs
...
Closes #7428
2022-07-11 17:16:19 +02:00
Martin
4c0aac8e0c
fix(linked_dropdown/dropdown): for dropdown_list, drop blank option because rails add it when the field is required. kind of same behaviour for linked_dropdown_list [but requires to manage it on the front too]
2022-07-11 14:47:26 +02:00
Martin
7ad47f3eae
bug(linked_dropdown/dropdown): dropdown_list : when mandatory, add an extra blank option. linked_dropdown_list : when mandatory and not filled, add an extra blank option to first list, then when select an element from the first list, another extra blank.
2022-07-11 14:47:26 +02:00
Martin
274b5eab2e
feat(invite): wrap invitation with targeted_user_links
2022-06-17 16:44:37 +02:00
Martin
7ed9d586cf
fix(drop_down_list): ensure to skip disabled input when sending data via autosave
2022-06-02 09:06:37 +02:00
Paul Chavard
02675a104d
fix(revision): fix tests to use new revison system
2022-05-31 08:58:53 +02:00
Pierre de La Morinerie
4fcb85fd65
app: remove procedure_dossier_papertrail feature flag
...
The feature is now enabled for all procedures.
2022-05-24 17:32:11 +02:00
Paul Chavard
c9b8d43acd
feat(autosave): use new autosave controller
2022-05-10 18:10:20 +02:00
Pierre de La Morinerie
7109e2d4e6
views: add a link to the deposit receipt
2022-05-04 16:09:52 +02:00
Paul Chavard
2d1370d123
refactor(champ): simplify repetition champ
2022-05-03 16:14:54 +02:00
Pierre de La Morinerie
8786b60285
specs: fix flaky "dossier brouillon" spec
...
When filling all the champs of a dossier, we skip the "Address"
champ (because it would attempt to request a blocked URL).
But that means the "Yes/No" radio buttons may be under the sticky
bottom bar, and thus not register the click – which makes the test fail.
Fix the issue by manually scrolling to the radio buttons.
2022-02-15 15:04:49 +01:00
Paul Chavard
cb66348916
a11y(select): cleanup select helpers in specs
2022-01-05 12:33:40 +01:00
Kara Diaby
598cb09c6d
tests
2021-12-29 17:37:58 +01:00
simon lehericey
3bdf6b63d9
small wording fixes
2021-12-08 11:19:30 +01:00
Paul Chavard
2ba05bfb4f
fix(dossier): use depose_at instead of en_construction_at
2021-12-06 15:49:17 +01:00
Martin
081d5094a9
feat(instructeurs/procedure/dossiers#extend_conservation): add extends duree conservation in action button list, also rewire this action for user [extend by procedure.duree_conservation_dans_ds by default] but force 1.month for instructeur. add new icon for standby based on https://en.wikipedia.org/wiki/Power_symbol
2021-12-06 07:20:01 +01:00
Martin
725521c3a1
fix(expiration_banner): only show expirations info when flip is enabled
...
fix(lint): lint haml
fix(spec): enable flipper and allow procedure to receive flipper check when checking banner presence
fix(doc): add missing documentation on readme regarding system testing with a visual feedback
fix(typo): add missing accent
clean(PR): feedback from Tchak, better to wrap feature check for expirability by procedure within dossier.expirable? helper
2021-11-30 16:05:32 +01:00
Martin
b6adf5fc72
feat(dossiers/show): enhance header with expirations message/banner. also ensure consistent design between dossier states
...
fix(spec): broken due to last refactoring
spec(dossier.extend_conservation): add system spec
lint(ruby): still not yet ready for auto lint in IDE...
2021-11-23 05:50:25 +01:00
Pierre de La Morinerie
9dd7806ae5
specs: add two missing fields to the brouillon spec
2021-11-09 15:22:20 +01:00
Pierre de La Morinerie
5dbb9f9e3c
specs: fix flaky "dossier brouillon" spec
...
The previous fix (scrolling to the viewport) didn't actually worked,
because the code tried to scroll the checkbox itself.
2021-11-09 15:21:59 +01:00
simon lehericey
d1162d7493
add e2e spec
2021-11-04 16:10:09 +01:00
Paul Chavard
ba0211ba52
feat(champ): ask for departement before asking for commune
2021-11-04 11:55:25 +01:00
Pierre de La Morinerie
b06183d7bf
specs: rename Dossier's with_all_champs
to with_populated_champs
...
This better reflects what the trait is used for, and disambiguate it
from the similarly named trait in the Procedure factory.
2021-11-03 19:38:01 +01:00
kara Diaby
71aa13f468
tests
2021-10-27 12:00:39 +02:00
Pierre de La Morinerie
9fd38cae5e
specs: migrate from features to system specs
...
System specs have been available since Rails 5.1, and are better
integrated with the Rails framework.
- Rename `spec/features` to `spec/system`
- Rename `feature do` to `describe do`
- Configure Capybara for system specs
Steps mostly taken from https://medium.com/table-xi/a-quick-guide-to-rails-system-tests-in-rspec-b6e9e8a8b5f6
2021-10-26 12:24:46 +02:00