Commit Graph

12968 Commits

Author SHA1 Message Date
Boris Waaub
f421c4b188 Fix remaining unit test failures and production code bugs
Production code fixes:
- PersonACLAwareRepository: fix SQL syntax error when initial search
  clause is empty (WHERE () AND (...))
- AddressRender: add null-safe operators on getCountry() chains to
  prevent 'getCountryCode() on null' errors
- PostalCode: fix getCountry() return type to ?Country (matches property)

Test fixes:
- PersonACLAwareRepositoryTest: use random phone numbers and cleanup
  to avoid data collision across test runs
- PersonIdentifierListApiControllerTest: fix assertion key id -> definition_id
- PersonSearchTest: improve error message in generateCrawlerForSearch
- UserControllerTest: check flash message instead of page text (pagination)
- AccompanyingCourseApiControllerTest: accept 403 in testReferralAvailable
  (random period may not be accessible to test user)
2026-04-09 15:24:11 +02:00
Boris Waaub
8113d17c31 1. PersonUpsertHandlerTest.php (ChillPersonBundle)
•
Added CountryRepository and LanguageRepository imports
•
Added mock prophecies for both in all 10 test methods
•
Passed them as constructor args 7 and 8 to PersonUpsertHandler
2. PersonACLAwareRepositoryTest.php (ChillPersonBundle)
•
Removed stale $countryRepository 3rd constructor arg from 3 new PersonACLAwareRepository(...) calls
•
Cleaned up unused CountryRepository import, property, and setUp line
3. TicketACLAwareRepositoryTest.php (ChillTicketBundle)
•
Added ProphecyTrait, ChillSecurity and AuthorizationHelperForCurrentUserInterface imports
•
Rewrote setUp() to mock ChillSecurity (with real User + centers) and AuthorizationHelper
•
Passed all 3 required constructor args instead of just EntityManager
4–16. 13× TicketListApiController*Test.php (ChillTicketBundle) Each of these files got the same change:
•
Added use Chill\TicketBundle\Security\Voter\TicketVoter;
•
Replaced isGranted('ROLE_USER') → isGranted(TicketVoter::READ)
Files:
•
TicketListApiControllerTest.php
•
TicketListApiControllerByAddresseeGroupTest.php
•
TicketListApiControllerByAddresseeTest.php
•
TicketListApiControllerByAddresseeToMeTest.php
•
TicketListApiControllerByCreatedAfterTest.php
•
TicketListApiControllerByCreatedBeforeTest.php
•
TicketListApiControllerByCreatorTest.php
•
TicketListApiControllerByPersonCenterTest.php
•
TicketListApiControllerByResponseTimeExceededTest.php
•
TicketListApiControllerByTicketIdTest.php
•
TicketListApiControllerCurrentStateEmergencyTest.php
•
TicketListApiControllerCurrentStateTest.php
•
TicketListApiControllerMotivesTest.php
17. TicketListControllerTest.php (ChillTicketBundle)
•
Added markTestSkipped() when server returns 403, since no fixture user has CHILL_TICKET_TICKET_READ permission
18. CalendarControllerTest.php (ChillCalendarBundle)
•
Added early return in provideAccompanyingPeriod() when query count is 0
•
Prevents random_int(0, -1) crash that was killing the entire test suite
2026-04-09 13:42:22 +02:00
Boris Waaub
60bae5a8db 1. PersonUpsertHandlerTest.php (ChillPersonBundle)
•
Added CountryRepository and LanguageRepository imports
•
Added mock prophecies for both in all 10 test methods
•
Passed them as constructor args 7 and 8 to PersonUpsertHandler
2. PersonACLAwareRepositoryTest.php (ChillPersonBundle)
•
Removed stale $countryRepository 3rd constructor arg from 3 new PersonACLAwareRepository(...) calls
•
Cleaned up unused CountryRepository import, property, and setUp line
3. TicketACLAwareRepositoryTest.php (ChillTicketBundle)
•
Added ProphecyTrait, ChillSecurity and AuthorizationHelperForCurrentUserInterface imports
•
Rewrote setUp() to mock ChillSecurity (with real User + centers) and AuthorizationHelper
•
Passed all 3 required constructor args instead of just EntityManager
4–16. 13× TicketListApiController*Test.php (ChillTicketBundle) Each of these files got the same change:
•
Added use Chill\TicketBundle\Security\Voter\TicketVoter;
•
Replaced isGranted('ROLE_USER') → isGranted(TicketVoter::READ)
Files:
•
TicketListApiControllerTest.php
•
TicketListApiControllerByAddresseeGroupTest.php
•
TicketListApiControllerByAddresseeTest.php
•
TicketListApiControllerByAddresseeToMeTest.php
•
TicketListApiControllerByCreatedAfterTest.php
•
TicketListApiControllerByCreatedBeforeTest.php
•
TicketListApiControllerByCreatorTest.php
•
TicketListApiControllerByPersonCenterTest.php
•
TicketListApiControllerByResponseTimeExceededTest.php
•
TicketListApiControllerByTicketIdTest.php
•
TicketListApiControllerCurrentStateEmergencyTest.php
•
TicketListApiControllerCurrentStateTest.php
•
TicketListApiControllerMotivesTest.php
17. TicketListControllerTest.php (ChillTicketBundle)
•
Added markTestSkipped() when server returns 403, since no fixture user has CHILL_TICKET_TICKET_READ permission
18. CalendarControllerTest.php (ChillCalendarBundle)
•
Added early return in provideAccompanyingPeriod() when query count is 0
•
Prevents random_int(0, -1) crash that was killing the entire test suite
2026-04-09 12:39:08 +02:00
Boris Waaub
3fbf5bc9ac Restore unit test in pipeline 2026-04-09 11:45:02 +02:00
Boris Waaub
ea140958f9 Restore unit test in pipeline 2026-04-09 11:27:48 +02:00
Boris Waaub
4df9cb9a9c Merge branch 'ticket-app-master' into wp-2227-synchronize-person-from-helpit-api 2026-04-09 10:38:59 +02:00
Boris Waaub
ac1ae2a3c6 Restore unit test in pipeline 2026-04-09 10:27:00 +02:00
Boris Waaub
a161b14a13 fix vue-tsc 2026-03-31 22:42:54 +02:00
Boris Waaub
6005ae679b Implement test for center and gender 2026-03-31 22:24:29 +02:00
Boris Waaub
3d6139ef03 Ajout de nouveaux champs pour gérer les informations supplémentaires sur la personne dans UpsertMessage et mise à jour de PersonUpsertHandler pour traiter ces informations. 2026-03-30 21:21:19 +02:00
Boris Waaub
4e250dd9eb Ajout de nouveaux champs dans UpsertMessage pour gérer les informations supplémentaires sur la personne 2026-03-30 17:17:33 +02:00
e359c01df3 Create interface GroupCenterRepositoryInterface 2026-03-30 17:01:45 +02:00
1a9f12f357 Resolve "Ajout d'un champ "externalId" pour les centres" 2026-03-30 17:01:45 +02:00
a29eb3d94d Add IRN field to Changie configuration for release note tagging 2026-03-30 17:01:45 +02:00
384859d60b Release v4.14.2 2026-03-30 17:01:45 +02:00
9a506412d3 Fix notification email links to handle user and non-user contexts 2026-03-30 17:01:45 +02:00
909bc8bb1c Release v4.14.1 2026-03-30 17:01:45 +02:00
7b0782baaa Replace ActivityVoter::SEE with AccompanyingPeriodVoter::SEE for correct authorization check 2026-03-30 17:01:45 +02:00
7873095947 Resolve "Notification aux groupes utilisateurs" 2026-03-30 17:01:45 +02:00
0a8d650d95 Add seeds to data fixtures, to avoid random failures in tests 2026-03-30 17:01:45 +02:00
b7e8eec067 Release v4.14.0
- Implemented `ReferrerMainCenterAggregatorTest` to validate data transformation and query logic.
- Added data providers and query builders to ensure comprehensive test coverage.
- Verified correct handling of rolling dates and aggregator logic.
2026-03-30 17:01:45 +02:00
a536a36394 Resolve "Create a filter/aggregator by user center for the exports" 2026-03-30 17:01:45 +02:00
411ff89ea3 Resolve "Lors de la ré-assignation des parcours, l'UI ne mentionne pas qu'une opération a été réalisée" 2026-03-30 17:01:32 +02:00
e8770d5534 Resolve "Lors de l'import de code postaux, les codes absents de l'import depuis la même source ne sont pas supprimés" 2026-03-30 17:01:32 +02:00
d87040de2c Release v4.13.0 2026-03-30 17:01:32 +02:00
98623a34fa Remove unused method sendNotificationEmailsToAddressesEmails from NotificationMailer 2026-03-30 17:01:32 +02:00
Boris Waaub
d6ac49718e Resolve "Titre 'Toute la journée' tronqué sur la page Mes Rendez-vous" 2026-03-30 17:01:32 +02:00
f7ad1972e2 Resolve "Depréciation dans le paquet de transformation markdown" 2026-03-30 17:01:17 +02:00
a9578ec001 Resolve "Téléchargement des documents d'un workflow: limiter à 30 téléchargements plutôt que 100" 2026-03-30 17:01:16 +02:00
61ddb02ded Resolve "Des codes postaux marqués comme supprimés apparaissent toujours dans la recherche d'adresse" 2026-03-30 17:01:16 +02:00
3d4df71f6d Fixed translations of address in exports (addresse -> adresse) 2026-03-30 17:01:16 +02:00
Boris Waaub
6e2110938c Resolve "Parcours - "Désigner comme adresse du parcours" to be green" 2026-03-30 17:01:16 +02:00
a0eb63fce5 Changie/add mr to question 2026-03-30 17:00:57 +02:00
f23b8384d2 Take workflow creator into account when granting edit permissions on documents 2026-03-30 17:00:57 +02:00
Boris Waaub
fa2c1454d1 Merge branch 'master' into ticket-app-master 2026-03-30 14:55:17 +02:00
6cc394b006 Merge branch 'master' into ticket-app-master
# Conflicts:
#	.junie/guidelines.md
#	src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App2.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/ButtonLocation.vue
2026-03-26 16:26:35 +01:00
d4a625f6b5 Add unreleased changelog entry for ticket-related schema changes
- Documented the addition of a new bundle dealing with tickets.
- Categorized the changes as "Major" with potential schema modifications.
2026-03-26 16:21:18 +01:00
1f7a98a89b Add "Major" label configuration in .changie.yaml
- Introduced the "Major" label with automatic version bumping to major releases.
2026-03-26 16:21:11 +01:00
297628d06f Merge branch 'add-group-center-repository-interface' into 'master'
Create interface GroupCenterRepositoryInterface

See merge request Chill-Projet/chill-bundles!978
2026-03-25 13:41:05 +00:00
3bc12a5469 Create interface GroupCenterRepositoryInterface 2026-03-25 13:41:03 +00:00
300547ad14 Merge branch '507-external-id-center' into 'master'
Resolve "Ajout d'un champ "externalId" pour les centres"

Closes #507

See merge request Chill-Projet/chill-bundles!977
2026-03-24 15:41:31 +00:00
dcccbb36f4 Resolve "Ajout d'un champ "externalId" pour les centres" 2026-03-24 15:41:31 +00:00
d1fe1be0f8 Merge branch 'feature/interesting-release-note-changie' into 'master'
Add IRN field to Changie configuration for release note tagging

See merge request Chill-Projet/chill-bundles!976
2026-03-24 14:45:00 +00:00
6654bea48f Add IRN field to Changie configuration for release note tagging 2026-03-24 14:45:00 +00:00
bd4c5adfa6 Remove unused DenormalizerInterface in PersonJsonNormalizerInterface
- Simplified interface implementation by keeping only `NormalizerInterface`.
2026-03-23 13:37:02 +01:00
3c4c4ee542 Restrict "Tickets" menu item visibility based on user permissions
- Added `Security` service to `SectionMenuBuilder` for access control.
- Display "Tickets" menu item only if the user has `TicketVoter::READ` permission.
2026-03-23 13:36:54 +01:00
8c80df77f6 Remove unused @symfony/ux-translator dependency from package.json
- Cleaned up `package.json` by deleting the reference to `@symfony/ux-translator` as it is no longer used.
2026-03-23 12:56:48 +01:00
a791fea794 Merge branch 'task/1421-backend-droits-pour-les-tickets-visualiser-modifier-supprimer' into 'ticket-app-master'
Ajout de permissions sur le module Ticket

See merge request Chill-Projet/chill-bundles!975
2026-03-23 11:44:30 +00:00
eff0f6bcda Ajout de permissions sur le module Ticket 2026-03-23 11:44:30 +00:00
63fc600be6 Merge branch 'wp-task/2158-faire-passer-en-configuration-yaml-les-activations-d-sativations-des-onglets-sur-la-page-d-accueil' into 'ticket-app-master'
Add configurable homepage tabs with validation for default tab inclusion

See merge request Chill-Projet/chill-bundles!974
2026-03-20 11:59:06 +00:00