Commit graph

253 commits

Author SHA1 Message Date
Pierre de La Morinerie
f0e045ad25 graphql_controller_spec: create all types de champs only when required
Creating a procedure with all available types de champ is slow. We can
create a simpler procedure in the default case, and only create all
types de champs when the example requires it.

Speeds up this spec from 1m 55s to 0m 57s.
2021-11-03 19:38:01 +01:00
Pierre de La Morinerie
e02251c0e5 graphql_controller_spec: populate all champs only when required
Creating a dossier with available champs populated is slow. We can
create simpler dossiers in the default case, and only populate all
champs when the example requires it.

Speeds up this spec from 2mn 20s to 1m 55s.
2021-11-03 19:38:01 +01:00
Pierre de La Morinerie
bb1bc9140d graphql_controller_spec: remove unused line 2021-11-03 19:38:01 +01:00
Pierre de La Morinerie
04159056af specs: clarify spec by replacing some context by describe 2021-11-03 19:38:01 +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
Paul Chavard
74e277d0a2 feat(graphql): add an option to dossier state change mutations to disable notifications 2021-09-07 14:21:48 +02:00
Paul Chavard
9e30d5fc22 fix(virus scan): prevent virus scans in specs 2021-09-07 14:21:48 +02:00
Paul Chavard
1399d9bba9 feat(graphql): expose demarche descriptor on dossier type
We don't want to expose full demarche type on dossiers because it would open the door for recursive queries that we want to avoid. DemarcheDescriptorType is a lightweight representation of demarche metadata.
2021-08-25 11:12:24 +02:00
Paul Chavard
a4482233b8 [GraphQL] expose deleted dossiers 2021-06-24 11:51:37 +02:00
Paul Chavard
990ae10399 GraphQL byte_size should be BigInt 2021-06-03 10:53:17 +02:00
Paul Chavard
866ae256a3 Add revision dossiers filters 2021-03-17 11:53:48 +01:00
Paul Chavard
76aa7bdfe3 Add default nil value for numero_tva_intracommunautaire 2021-03-16 12:57:10 +01:00
Paul Chavard
9ce07be1ee [GraphQL] modifier annotation 2021-02-11 17:45:14 +01:00
Paul Chavard
dc08993a89 Add DateTime champ to GraphQL 2021-01-14 14:08:42 +01:00
Paul Chavard
fed300bfe1 Fix and test ActiveStorage::IntegrityError on upload 2020-12-11 10:30:17 +01:00
Paul Chavard
65d650eba6 Better graphql mutation error messages 2020-12-10 18:35:24 +01:00
Paul Chavard
cac981cf42 fix warning with ruby 2.7 2020-11-25 10:46:34 +01:00
Paul Chavard
b897e0cc1c [GraphQL] add better errors when attachments are not properly used 2020-11-17 12:40:14 +01:00
Paul Chavard
0aa06d0197 [GraphQL] expose dossier pdf, geojson and attestation 2020-10-06 21:54:43 +02:00
Paul Chavard
061a743759 [GraphQL] Add archiver mutation 2020-09-22 08:34:38 +00:00
clemkeirua
005c244438 fixup! add fix for nil values on numeroVoie and typeVoie 2020-09-22 10:17:54 +02:00
clemkeirua
7ba8ab9e6a maj du schema json 2020-09-22 10:14:55 +02:00
clemkeirua
412a87e532 add fix for nil values on numeroVoie and typeVoie 2020-09-22 09:43:44 +02:00
clemkeirua
1173f1e459 add default values when nil 2020-09-22 09:43:44 +02:00
clemkeirua
adb2a91640 add a broken test case 2020-09-22 09:43:44 +02:00
clemkeirua
4c17acf349 ajout du code effectif entreprise dans une spec graphql nominale 2020-09-22 09:43:44 +02:00
clemkeirua
6643b598c3 remove :administrateur_graphql 2020-09-17 09:24:50 +02:00
Paul Chavard
91bc2db594 Expose revisions on GraphQL API 2020-09-08 10:54:13 +02:00
Paul Chavard
6a33a8e48b update controllers specs to use revisions 2020-09-02 11:26:26 +02:00
clemkeirua
c404f92107 graphql: possibility to filter dossiers by archived 2020-07-29 16:59:34 +02:00
Paul Chavard
86f562e7ea Expose repetitions and options on champ_descriptors 2020-07-21 10:37:33 +02:00
Christophe Robillard
8f9d6d2871 show which instructeur took decision and when
and also replace "sans suite" by "classé sans suite"
2020-07-08 18:15:15 +02: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
792e755af9 expose effectif_annuel dans api graphql 2020-04-23 09:53:27 +02:00
Christophe Robillard
149b98007f add effectif mensuel to graphql api 2020-04-21 21:13:07 +02:00
Paul Chavard
32f783142c [GraphQL] allow to query dossiers by groupe instructeur 2020-04-09 09:29:28 +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
pedong
62f82cc83c add dossierChangerGroupeInstructeur mutation 2020-03-05 12:28:16 +01:00
Paul Chavard
1ed1aa75cd [GraphQL] add groupeInstructeur on dossier 2020-03-03 10:23:18 +01:00
Paul Chavard
6030409b2f [GraphQL] Use GraphQL::Types::BigInt instead of Int 2020-01-28 21:48:00 +01:00
Pierre de La Morinerie
792ba73643 factories: ensure that dossiers with_entreprise are consistent 2020-01-21 17:24:56 +01:00
Pierre de La Morinerie
724ff50363 factories: rename dossier for_individual to with_individual
This clarifies the distinction between

```
create :procedure, :for_individual
```

and

```
create :dossier, :with_individual
```
2020-01-21 17:24:56 +01:00
Paul Chavard
c6326bfa77 Fix tests involving attachment urls 2020-01-08 14:46:18 +01:00
Pierre de La Morinerie
7f5b0d8bf3 specs: don't create an implicit brouillon in all test cases 2020-01-07 17:59:11 +01:00
Pierre de La Morinerie
630c6de967 specs: move the query for individual to the individual context 2020-01-07 17:59:11 +01:00
Paul Chavard
6b5793f0b9 [GraphQL] fix a crash in mutations with an attachment 2019-12-11 13:22:32 +01:00
Paul Chavard
422b7f37ec [GraphQL] expose file information 2019-12-11 12:34:49 +01:00
Paul Chavard
b5eafdab56 [GraphQL]: informations du service 2019-12-04 14:21:40 +01:00
Paul Chavard
fd42fafcb4 [GraphQL]: informations du demandeur du dossier 2019-12-04 12:39:29 +01:00
Paul Chavard
7b947feae4 Rename demarche archivée to demarche close 2019-11-28 15:07:16 +01:00
Paul Chavard
e9f993fe0c [GraphQL]: normalize date names in French 2019-11-27 12:23:00 +01:00
Paul Chavard
e600aceccc [GraphQL]: add dossier state change mutations 2019-11-19 11:51:34 +01:00
Paul Chavard
ba03dbf8dd [GraphQL] Add dossierEnvoyerMessage mutation 2019-11-13 19:54:27 +01:00
Paul Chavard
f0ac01bf19 [GraphQL]: test unauthorized mutation 2019-11-13 19:54:27 +01:00
Paul Chavard
ea6667ff9f [GraphQL]: démarche and dossier number should be a number 2019-11-13 15:53:56 +01:00
Paul Chavard
fa741c9bae [GraphQL]: do not return dossiers brouillons 2019-11-07 22:07:42 +01:00
Paul Chavard
990c867c2e [GraphQL] Add more filters to dossiers 2019-11-07 22:07:42 +01:00
Paul Chavard
4231b81727 [GraphQL] Add create direct upload mutation 2019-11-07 12:48:51 +01:00
Paul Chavard
3f36153807 [GraphQL] Add groupe_instructeurs to demarche 2019-09-26 11:25:14 +02:00
Paul Chavard
4b885f7a12 Add basic graphql test 2019-09-24 10:47:21 +02:00
pedong
25596ca2f2 [fix #4181] add service to procedure API 2019-09-10 11:06:28 +02:00
Paul Chavard
b8d3e4c41b Fix attestation url for dossiers with no attestation 2019-08-01 15:53:50 +02:00
Paul Chavard
b266915892 Add repetitions to api 2019-08-01 10:04:35 +02:00
Paul Chavard
fba195c0b5 Add attestation url to dossier on api 2019-07-31 18:30:40 +02:00
Pierre de La Morinerie
f69f325236 api: remove export of old pieces justificatives 2019-07-30 16:11:17 +02:00
Paul Chavard
0d80c48b7e Add avis to api 2019-06-27 14:40:17 +02:00
Paul Chavard
1781a49932 Add order param to API 2019-06-20 15:28:16 +02:00
clemkeirua
4aab72be68 implementation du systeme de PJ de motivation 2019-05-07 08:54:29 +02:00
Paul Chavard
d988638c58 Simplify API carte serializer 2018-11-27 16:11:25 +01:00
Paul Chavard
0b017580c5 Expose migrated legacy carto champs on api 2018-11-20 10:53:14 +01:00
Paul Chavard
fe630847e9 Refactor legacy carto serializer 2018-11-20 10:53:14 +01:00
Paul Chavard
80189def98 Remove n+1 calls from API queries 2018-11-08 14:45:09 +01:00
simon lehericey
2f2f1e1321 Let the API return times in UTC for now 2018-10-31 11:43:48 +01:00
simon lehericey
9475795143 fix spec 2018-10-26 10:10:20 +00:00
Paul Chavard
4ebc0b7f4c Refactor link attribute generation on ProcedureSerializer 2018-10-22 23:28:16 +02:00
gregoirenovel
ed11852300 Delete the InviteGestionnaire model 2018-10-10 12:07:10 +02:00
simon lehericey
2288303de9 [fix #2777] DossiersSerializer: add state 2018-10-08 18:36:49 +02:00
simon lehericey
912371fbd6 DossierController: use new token validation 2018-09-27 10:24:56 +02:00
simon lehericey
3c95273d6f ProcedureController: use new token validation 2018-09-27 10:24:56 +02:00
simon lehericey
6837c79dd1 Spec: use have_http_status matcher 2018-09-27 10:24:56 +02:00
simon lehericey
2b46a56259 Spec: simplify 2018-09-27 10:24:56 +02:00
simon lehericey
d14944fba3 Spec: mutualize subject 2018-09-27 10:24:56 +02:00
simon lehericey
7b27f00a23 Spec: do not use the deprecated api_token 2018-09-27 10:24:56 +02:00
simon lehericey
9a6e985bac Spec: remove useless require 2018-09-27 10:24:56 +02:00
simon lehericey
674d231194 Spec: add spaces for readability 2018-09-27 10:24:56 +02:00
simon lehericey
1997f45d7e Api Token: do not generate one token by default 2018-09-27 10:14:32 +02:00
gregoirenovel
3662b82039 accompagnateur → instructeur 2018-08-29 23:09:08 +02:00
gregoirenovel
4b071ecf06 Use enum to the fullest with Dossier.states 2018-08-29 17:31:08 +02:00
gregoirenovel
0ac160c824 Remove the now useless stats API 2018-08-29 14:54:49 +02:00
Frederic Merizen
b003fe9221 [Fix #2176] Allow setting page size in API 2018-06-29 17:34:35 +02:00
Paul Chavard
d0a6957862 Remove old cerfa code 2018-06-28 15:16:20 +02:00
Paul Chavard
d99eed122d Use new models in controllers and views 2018-05-24 17:54:51 +02:00
gregoirenovel
682823ec93 Bump gems
- apipie-rails
- brakeman
- dotenv-rails
- openid_connect
- openstack
- rack-mini-profiler
- rubocop
- sentry-raven
- web-console
- webmock
2018-05-18 18:14:17 +02:00
Paul Chavard
45019ce75c Use Flipflop instead of Feature 2018-04-18 16:51:21 +02:00
gregoirenovel
d0a59058e8 Remove the mandataire_social guess
Rationale:
- is true for only 0.06% of Dossiers
- is not displayed anymore anyways
- will be a rare case for now
  * FC adoption is not insane
  * FC used more for personal than professional
    matters
  * not always the mandataires sociaux that fill
    dossiers for their companies, so not that
    relevant
- we can add it back later
2018-03-20 16:09:00 +01:00
Paul Chavard
e4f07dbae6 Document pagination params in api and allow to set per_page limit 2018-03-15 17:50:41 +01:00
Paul Chavard
87d1948023 Add token authentication to API 2018-03-15 17:43:45 +01:00
gregoirenovel
d3f0fc703a Enable some cops to remove ambiguity 2018-03-06 17:18:44 +01:00
gregoirenovel
b138dcd876 Enable the Layout/SpaceInsideHashLiteralBraces cop 2018-01-18 10:53:35 +01:00
gregoirenovel
897a30da0c Enable the Layout/SpaceInsideBlockBraces cop 2018-01-18 10:53:34 +01:00
gregoirenovel
f605cd35ac Enable the Layout/SpaceAfterColon cop 2018-01-18 10:53:34 +01:00
gregoirenovel
9d75526460 Enable the Layout/MultilineAssignmentLayout cop 2018-01-15 22:33:13 +01:00
gregoirenovel
9e0e553f80 Enable the Layout/IndentArray cop 2018-01-15 22:33:12 +01:00
Mathieu Magnin
62d8381ef7 Remove will paginate 2018-01-03 14:35:48 +01:00
LeSim
56545933a9 [fix #504] Dossier: initiated -> en_construction
The change must not impact the api
2017-12-15 11:52:09 +01:00
Simon Lehericey
b02282c1d0 [fix #1000] export name and first name in api 2017-12-11 15:29:56 +01:00
Simon Lehericey
28a047a64b [Fix #508]Api GeoJson: export dossier.json_latlngs to geojson 2017-11-28 14:41:08 +01:00
Simon Lehericey
f34546cf2a [Fix #508]Api GeoJson: export cadastre 2017-11-28 14:37:12 +01:00
Simon Lehericey
9f2338a70a [Fix #508]Api GeoJson: export quartier_prioritaire 2017-11-28 14:37:12 +01:00
Mathieu Magnin
5eff915b9d Add initiated_at to DossiersSerializer 2017-10-06 17:49:06 +02:00
Mathieu Magnin
dd581082ca [Fix #395] Export user email in API 2017-08-25 12:01:53 +02:00
Mathieu Magnin
b0c0477622 [Fix #315] Order champs by procedure order in export 2017-07-19 16:31:30 +02:00
gregoirenovel
bb10e13e2f [Ref #145] Don't use Procedure.archived anymore 2017-07-11 15:03:35 +02:00
gregoirenovel
ce2def9c40 Expose the motivation on the API 2017-06-19 15:01:14 +02:00
gregoirenovel
f1907f4d0e Enable the Layout/EmptyLinesAroundBlockBody cop 2017-06-13 10:35:23 +02:00
gregoirenovel
bc16027ccc Enable the Layout/BlockEndNewline cop 2017-06-13 10:35:19 +02:00
Mathieu Magnin
757af12d42 Add invites to API 2017-04-21 14:51:35 +02:00
Mathieu Magnin
40d897f538 Add accompagnateurs emails in API 2017-04-21 14:51:35 +02:00
Mathieu Magnin
bf67b3f7ad Add dossier workflow dates to the API 2017-04-21 14:51:35 +02:00
Mathieu Magnin
822c7cdd96 Add human version translation for state 2017-04-21 14:51:35 +02:00
Mathieu Magnin
3730ba76b5 Remove sqlite flag for tests 2017-04-12 17:34:31 +02:00
Simon Lehericey
2d6d289457 Tests: feature flip test with timezone 2017-02-28 17:01:58 +01:00
Xavier J
647eaa4ba8 Merge branch 'develop' into develop_v2
# Conflicts:
#	Gemfile.lock
#	db/schema.rb
2016-11-17 16:55:41 +01:00
Xavier J
305410f7a3 Fix Gemfile.lock and tests 2016-11-15 17:20:36 +01:00
Xavier J
90cfd3eccb Fix Test spec/controllers/api/*.rb 2016-11-15 09:54:17 +01:00
Xavier J
480431ea01 Add on gestionnaire dossier view the private form 2016-08-08 12:52:30 +02:00
Xavier J
116dd0d94f Administrateur can be define private champs => same as typical champs 2016-08-03 18:19:56 +02:00
Xavier J
21a18a536f Add total_commentaire in API Dossier and total_dossier on API Procedure 2016-07-22 15:06:30 +02:00
Xavier J
7d0bcfc35f Delete utilisation of "nom_projet" attribut (no delete in database) 2016-07-19 16:10:50 +02:00
Xavier J
9669fee7fe Add state attribut in API 2016-07-11 14:43:20 +02:00
Xavier J
866565495d Delete default description in dossier 2016-06-13 12:03:05 +02:00
Guillaume Lazzara
833d7790c2 Add support for remote OVH cloud storage 2016-05-13 16:08:51 +02:00
Xavier J
b15c2bbb2b New feature : User, Guest and Gestionnaire can be upload a document with theirs comments 2016-04-20 16:51:57 +02:00
Xavier J
eeaefdcc79 Add reference to user who upload a cerfa or a piece justificative 2016-03-17 17:33:38 +01:00
Xavier J
bb79aca58a Add historic for piece justificative 2016-03-17 14:50:10 +01:00
Xavier J
4b7e6426b3 Gestionnaire can have the history of cerfa updated on dossier show page 2016-03-16 15:34:35 +01:00
Xavier J
26431ac528 Add column created_at on cerfa and piece_justificative 2016-03-14 17:30:22 +01:00
Xavier J
e944364929 Add Cerfa on API Show dossier 2016-03-14 11:10:02 +01:00
Xavier J
b49770f408 Add commentaires on API Show Dossier 2016-03-14 10:34:46 +01:00
Xavier J
f4de0b8431 - Add resize on wysihtml5 bootstrap
- Add rich text on procedure description
- Ajust text on description dossier user form
2016-03-02 15:21:45 +01:00
Xavier J
9c1268fdd5 Add statistiques API for dashboard 2016-02-29 15:15:44 +01:00
Xavier J
3e62dd01fb Pre-doc APIs 2016-02-26 14:16:17 +01:00
Xavier J
c971849312 Merge branch 'api-pie' into develop 2016-02-26 14:00:29 +01:00
Xavier J
4993abf5f2 Create fonction content_url to make public download link for cerfa and pj 2016-02-26 13:59:03 +01:00
Xavier J
16c72e7478 Complete API Dossier 2016-02-26 12:17:41 +01:00
Xavier J
2a6da54320 add gem api-pie
Error : stack level too deep
2016-02-22 19:42:47 +01:00
Xavier J
d7dbd28507 fix test cerfa flag 2016-02-04 14:08:35 +01:00
Xavier J
68bb4935e7 Fix bug enterprise's date_creation 2016-01-28 11:29:44 +01:00
Tanguy PATTE
dc5ac9807d start api to display dossier
missing pj, fields, exercices
2016-01-25 16:08:10 +01:00
Tanguy PATTE
514918b2b8 parametrize pagination on dossier index api 2016-01-21 11:41:24 +01:00