πŸ§ͺ Rapport Tests Pest Laravel β€” TEST

10/08/2026 17:55:21 · ❌ 48 test(s) en échec

869
Total
817
PassΓ©s
48
Γ‰chouΓ©s
4
IgnorΓ©s
709.8s
DurΓ©e
StatutClasseTestDurΓ©eMessage
βœ… Tests.Api.Inpulse.InpulseTest Sync products 0.037s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline saint denis june 1 reproduces counter bug 20.170s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline pfc fruit legume june 1 reproduces counter bug 9.878s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline saint denis excursion time is counter times 600 8.964s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest nominal single measure every 10 min still works 9.765s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline logger issue day csv reproduces error-day behavior 10.172s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline logger issue day csv with connectivity checks 15.010s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline logger issue day mod nico 1 csv reproduces error-day behavior 10.350s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline logger issue day mod nico 2 csv reproduces error-day behavior 10.229s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest baseline quick june 2026 csv 37.239s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest replay OK_CASE quick nevers marzy csv 11.612s
βœ… Tests.Features.Loggers.FridgeLoggerBatchReplayTest replay TEMP_KO_CONN_OK_CASE_WITH_EXCLUSION quick villeneuve csv 16.149s
βœ… Tests.Features.Sync.FridgeLoggersTest Temperatures 11.485s
βœ… Tests.Features.Sync.FridgeLoggersTest Several measures 9.763s
βœ… Tests.Features.Sync.FridgeLoggersTest Connection 10.407s
βœ… Tests.Features.Sync.FridgeLoggersTest Epv cauderan 17.231s
βœ… Tests.Features.Sync.FridgeLoggersTest Terrasse saint pol 10.485s
βœ… Tests.Features.Sync.FridgeLoggersTest Global connection 14.857s
βœ… Tests.Features.Sync.FridgeLoggersTest ClosedDates logger 10.461s
βœ… Tests.Features.Sync.FridgeLoggersTest ClosedDates logger 9.450s
βœ… Tests.Features.Sync.FridgeLoggersTest ClosedDates contacts 9.785s
βœ… Tests.Features.Sync.FridgeLoggersTest ClosedDates connexion contacts 9.462s
βœ… Tests.Features.Sync.FridgeLoggersTest ClosedDates connexion contacts 10.146s
βœ… Tests.Features.Sync.FridgeLoggersTest Case cirl 17.817s
βœ… Tests.Features.Sync.FridgeLoggersTest No data alerts 11.685s
βœ… Tests.Features.Sync.FridgeLoggersTest NoDataAlerts AllLoggers 9.333s
βœ… Tests.Features.Sync.FridgeLoggersTest NoDataAlerts ResumeBeforeSecondAlert 10.562s
βœ… Tests.Features.Sync.FridgeLoggersTest NoDataAlerts MultipleLoggers 12.369s
βœ… Tests.Features.Sync.FridgeLoggersTest NoDataAlert IgnoresInactiveLoggers 10.298s
βœ… Tests.Features.Loggers.LoggerClosedDatesScenariosTest back_to_normal after exclusion sends no email when issue was never alerted 8.958s
βœ… Tests.Features.Loggers.LoggerClosedDatesScenariosTest deferred issue resolved during exclusion is not promoted when exclusion ends 9.294s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest scenario stable produces one batch per measurement 8.906s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest scenario stable and unstable accept inLimits OK KO 8.349s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest scenario unstable produces one burst with backlog since last reception 9.007s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest scenario stable then unstable then noData then unstable then stable ends in stable_ok 11.361s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest stable_ok to stable_ko triggers temperature_issue 10.021s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest scenario stable then noData then unstable then stable 9.707s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest connection scenario shapes with data set "dataset "stable β†’ unstable β†’ noData β†’ unstable β†’ stable"" 9.000s
βœ… Tests.Features.Loggers.LoggerConnectionScenariosTest connection scenario shapes with data set "dataset "stable β†’ noData β†’ unstable β†’ stable"" 8.653s
βœ… Tests.Features.Loggers.LoggerPeriodicTemperatureTickTest periodic tick triggers dizzy temperature issue after ko readings then silence 9.019s
βœ… Tests.Features.Loggers.LoggerPeriodicTemperatureTickTest periodic tick does not run when last reading temperature is in limits 8.879s
βœ… Tests.Features.Loggers.LoggerPeriodicTemperatureTickTest periodic tick sends temperature reminder when excursion remains open without new data 8.993s
βœ… Tests.Features.Loggers.LoggerPeriodicTemperatureTickTest periodic tick does nothing when window has no readings 9.106s
βœ… Tests.Features.Loggers.LoggerTemperatureReminderTest reminder event type mirrors initial temperature issue 0.052s
βœ… Tests.Features.Loggers.LoggerTemperatureReminderTest sendsTemperatureReminder identifies reminder events 0.038s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest dizzy temperature issue variant distinguishes co-occurring dizzy_started 0.036s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest dizzy ended alert variant covers temperature outcomes 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest temperature and resolution alerts are suppressed when dizzy ended covers them 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "stable_ok β†’ stable_ko"" 0.046s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "stable_ok β†’ unstable_ok"" 0.038s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "stable_ok β†’ unstable_ko"" 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "stable_ko β†’ stable_ok"" 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "stable_ko β†’ unstable_ok"" 0.039s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "stable_ko β†’ unstable_ko"" 0.038s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "unstable_ok β†’ stable_ok"" 0.041s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "unstable_ok β†’ stable_ko"" 0.038s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "unstable_ok β†’ unstable_ko"" 0.038s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "unstable_ko β†’ stable_ok"" 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "unstable_ko β†’ stable_ko"" 0.036s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "unstable_ko β†’ unstable_ok"" 0.038s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest transition planner returns expected events with data set "dataset "first batch (no previous state)"" 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest window state is derived from analysis flags with data set "dataset "stable ok"" 0.037s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest window state is derived from analysis flags with data set "dataset "stable ko"" 0.041s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest window state is derived from analysis flags with data set "dataset "unstable ok"" 0.039s
βœ… Tests.Features.Loggers.LoggerWindowTransitionsTest window state is derived from analysis flags with data set "dataset "unstable ko"" 0.037s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryControllerTest Restaurant matches its own action plan 0.127s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryControllerTest Restaurant does not match another restaurants action plan 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryControllerTest Null current entity is denied 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryControllerTest Client with access to owning restaurant is allowed 0.008s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryControllerTest Client without access to owning restaurant is denied 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryControllerTest Non restaurant userable type is denied even if id coincides 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow does not crash when planFiles is eloquent collection 0.030s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow returns dash when no files or comments 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow merges plan comments into commentaries 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow counts photos and documents 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow counts old files when no period given 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow excludes file outside window when period given 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow counts file inside window when period given 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest ResolveSource returns action plan label when recordable type null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest ResolveSource returns action plan label for action plan class 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest ResolveSource returns audit label for audit record class 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest ResolveSource falls back to class basename for unknown type 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow uses changelog status date and author when changelog given 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow falls back to dash when changelog has no status or employee 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryExportTest BuildRow uses plan status and creation date when no changelog 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest RecordableTypeForModule returns audit record class for audits 0.008s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest RecordableTypeForModule returns null for unknown module 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetBoardData calculates percent correctly 0.002s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetBoardData returns dash percent when no plans 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetBoardData returns 100 percent when all done 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDaysData formats kpi string with percent 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDaysData returns dash when total is zero 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDaysData uses zero finished when day absent from finished 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetTableViewData delegates to repo 0.003s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetPopupItems delegates to repo 0.002s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest FindById delegates to repo 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetAuditLinkedActionPlans chains repo calls 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetByAuditRecordId delegates to repo 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest CountByAuditRecordId delegates to repo 0.000s
⚠️ Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDetailsData separates documents from images 0.001s GetDetailsData separates documents from imagesIlluminate\Contracts\Container\BindingResolutionException: Target class [config] does not exist. at vendor/laravel/framework/src/Illuminate/Container/Container.php:1125 at vendor/laravel/framework/src/Illuminate/Container/Container.php:936 at vendor/lara
⚠️ Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDetailsData returns status changelogs collection 0.000s GetDetailsData returns status changelogs collectionIlluminate\Contracts\Container\BindingResolutionException: Target class [config] does not exist. at vendor/laravel/framework/src/Illuminate/Container/Container.php:1125 at vendor/laravel/framework/src/Illuminate/Container/Container.php:936 at vendor
⚠️ Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDetailsData returns empty data when no files or changelogs 0.000s GetDetailsData returns empty data when no files or changelogsIlluminate\Contracts\Container\BindingResolutionException: Target class [config] does not exist. at vendor/laravel/framework/src/Illuminate/Container/Container.php:1125 at vendor/laravel/framework/src/Illuminate/Container/Container.php:936
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveOrphanTag returns supprimee when category is deleted 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveOrphanTag returns national when nat category and loc only settings 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveOrphanTag returns local when loc category and nat only settings 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveOrphanTag returns null when category matches active scope 0.000s
⚠️ Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest GetDetailsData builds photo gallery urls in order 0.001s GetDetailsData builds photo gallery urls in orderIlluminate\Contracts\Container\BindingResolutionException: Target class [config] does not exist. at vendor/laravel/framework/src/Illuminate/Container/Container.php:1125 at vendor/laravel/framework/src/Illuminate/Container/Container.php:936 at vendor/l
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest FormatHomeKpi returns dash when total is zero 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest FormatHomeKpi formats percentage and fraction 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest FormatHomeKpi rounds percentage 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest PopupTypeIcon returns expected icon per type 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ApplyDynamicFilterValues unsets all sections when everything empty 0.002s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ApplyDynamicFilterValues populates categories when present 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ApplyDynamicFilterValues populates responsable names when present 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ApplyDynamicFilterValues unsets statuses when setting is null even with statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ApplyDynamicFilterValues populates statuses when setting and statuses present 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ApplyDynamicFilterValues unsets statuses when setting present but no statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveFilterCategories returns loc categories when loc only 0.002s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveFilterCategories returns nat categories when nat only 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveFilterCategories merges loc and nat sorted by position 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveFilterCategories appends orphan categories with tag 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveLocFilterCategories delegates to repo with userable id and class 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryLocalServiceTest ResolveNatFilterCategories delegates to repo with client family id 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetHomeCardData returns required keys 0.016s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetDaysData returns empty array 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetBoardData returns stub structure 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetTableViewData returns empty collection 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetPopupItems returns empty paginator 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest FindById returns null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetAuditLinkedActionPlans returns empty collection 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest GetByAuditRecordId returns empty collection 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest CountByAuditRecordId returns zero 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest BuildFilters returns empty array 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest FindAttachedFile returns null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanHistoryMultiServiceTest PopupTypeIcon returns expected icon per type 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting rejects invalid field 0.009s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting propagates repo failure 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetIndexPageData creates settings when missing 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetIndexPageData does not recreate settings when present 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetIndexPageData returns early when settings setup fails 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetIndexPageData creates statuses when missing 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetIndexPageData does not duplicate statuses when present 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories for client family returns family own categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories without family returns only restaurant categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories with family and loc param returns only restaurant categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories with family and nat param returns only family categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories with family passes active only to repo 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories does not filter locally disabled family categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetCategories with family and loc nat param returns both 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateCategory returns success with model when repo succeeds 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateCategory returns failure when repo returns null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest ToggleCategory returns success with model when repo succeeds 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest ToggleCategory returns failure when repo returns null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest BulkDelete returns success when repo succeeds 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest BulkDelete returns failure when repo fails 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest GetIndexPageData includes settings in return 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns false when no setting 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns false when no active statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns true via loc categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns true via nat categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns true when loc missing but nat has categories 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns false when no categories anywhere 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns false when loc no categories and nat disabled 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns false when nat no categories and loc disabled 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest IsConfiguredForRestaurant returns false when neither loc nor nat 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "photos_enabled" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "photos_required" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "commentaries_enabled" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "commentaries_required" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "documents_enabled" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "documents_required" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "reminder_date_enabled" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanParametersServiceTest UpdateSetting accepts all whitelisted fields with data set "reminder_date_required" 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveActiveCategories without family uses loc categories 0.016s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveActiveCategories with loc only uses loc categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveActiveCategories with nat only uses family categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveActiveCategories with loc and nat merges both 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData creates settings when missing 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData does not recreate settings when present 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData counts past reminder as urgent 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData passes through editLevel 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData excludes future reminder from urgent count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData excludes null reminder from urgent count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData excludes draft from urgent count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData urgent count sums across statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData excludes finished status from urgent count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData excludes plan with finished at from urgent count even on non finished status 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData returns no urgent when no statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData statuses sorted by position 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData includes plan finished within 7 days 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData excludes plan finished more than 7 days ago 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetIndexData old finished plan excluded from urgent count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetUrgentPlansData flattens urgent plans across statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetUrgentPlansData sorts by reminded at ascending 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetUrgentPlansData excludes plan with finished at regardless of status 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetUrgentPlansData passes through editLevel settings and statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt sets when finished statuses id matches 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt clears when finished statuses id set but status differs 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt fallback sets when name contains termin 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt fallback is case insensitive 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt fallback clears when name does not match 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt preserves existing finished at when already finished 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ComputeFinishedAt clears when settings is null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest IsFinishedStatus true when configured id matches 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest IsFinishedStatus false when configured id differs 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest IsFinishedStatus fallback matches name contains termin 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest IsFinishedStatus fallback false when name does not match 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveIsDraftOnUpdate stays draft when still requested as draft 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveIsDraftOnUpdate finalizes draft when requested as final 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveIsDraftOnUpdate ignores draft request on already finalized plan 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest ResolveIsDraftOnUpdate stays final when already finalized and no save mode 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest DeleteFileAttachment delegates to repo and returns result 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetPlansForRecord delegates to repo with correct type and id 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetPlansForRecord keeps plan without finished at 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetPlansForRecord keeps plan finished within 7 days 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetPlansForRecord excludes plan finished more than 7 days ago 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest AuditRecordHasValidatedTask delegates to repo 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest AuditRecordHasValidatedTask bypasses gate for finished period 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest AuditRecordHasValidatedTask delegates to repo when period unknown 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount returns zero when no plans 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount includes finished plans in count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount counts active and finished plans 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount excludes drafts from count 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount hasUrgent true when reminder in past 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount hasUrgent false when reminder after tomorrow 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount hasUrgent false when no reminder 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetAuditPlansCount hasUrgent false when only draft has past reminder 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest FilterByModuleAccess excludes employee with module in forbidden 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest FilterByModuleAccess includes employee without forbidden modules 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest FilterByModuleAccess includes employee with other forbidden module 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest FilterByModuleAccess restores current employee when filtered out 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetResponsableEmployees returns a collection 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetResponsableEmployees delegates to repo with correct restaurant 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetResponsableEmployees filters out employees without module access 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest GetResponsableEmployees preserves current employee when access revoked 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest FilterByModuleAccess does not duplicate current employee already in list 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest SanitizeFileName replaces spaces with dashes 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest SanitizeFileName strips special characters but keeps dashes 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest SanitizeFileName strips underscores 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest SanitizeFileName keeps already safe name with dash unchanged 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildStorePayload uses category name and icon when not locked 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildStorePayload locked category overrides resolved category 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildStorePayload falls back to empty strings when no category or status 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildStorePayload defaults recordable type to action plan when absent 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildUpdatePayload uses request values when not advance only 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildUpdatePayload advance only locks category description and reminder 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildUpdatePayload advance only still allows employee and status change 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanServiceTest BuildUpdatePayload falls back to plan statuses name when status not found 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetCategoriesToSync delegates and returns array 0.029s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetSettingsToSync delegates and returns array 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetActionPlansToSync delegates and returns array 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetAttachedFilesToSync delegates and returns array 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetCommentsToSync delegates and returns array 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetStatusesToSync returns empty array when no settings id 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetStatusesToSync delegates when settings id provided 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetStatusesToSyncForRestaurantTablet returns empty when settings missing 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetStatusesToSyncForRestaurantTablet delegates with tablet sync date 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest GetStatusesToSyncForRestaurantTablet ignores last sync when forced 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest LogStatusChange does not log when statuses id is null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest LogStatusChange does not log when status unchanged 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest LogStatusChange logs when status changes 0.001s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest LogStatusChange logs when old status was null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest SyncAttachedFile returns invalid file error when file is null 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest SyncAttachedFile returns invalid file error when file not valid 0.004s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest SyncAttachedFile returns error when action plan not found 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest SyncAttachedFile returns error when storage fails 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest SyncAttachedFile returns success with record id on new file 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns false when no setting 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns false when no active statuses 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns true via loc categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns true via nat categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns true when loc missing but nat has categories 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns false when no categories anywhere 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns false when loc no categories and nat disabled 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns false when nat no categories and loc disabled 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest IsConfiguredForRestaurant returns false when neither loc nor nat 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveStatusId keeps id and name when id already valid 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveStatusId matches by name when id is stale sqlite id 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveStatusId returns null id when no match by name 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveStatusId handles null name without error 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveCategoryId keeps id when already valid 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveCategoryId matches by label when id is stale 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest ResolveCategoryId returns null when no match 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents new plan not draft not finished fires created only 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents new plan created directly finished fires both in order 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents new plan as draft fires nothing 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents new plan draft and finished fires nothing 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents existing plan leaving draft fires created 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents existing plan leaving draft and finished fires both 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents existing plan transitioning to finished fires finished only 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents existing plan already finished fires nothing 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents existing plan still draft fires nothing 0.000s
βœ… Tests.Unit.ActionPlan.ActionPlanSyncServiceTest DecideNotifyEvents existing plan no change fires nothing 0.000s
⚠️ Tests.Unit.Api.AdoriaSyncFixtureBenchmarkTest Sync replay fixture is idempotent and reports timings 0.065s Sync replay fixture is idempotent and reports timingsErrorException: fwrite(): Write of 28 bytes failed with errno=32 Broken pipe at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at tests/Unit/Api/AdoriaSyncFixtureBenchmarkTest.php:131
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Equilibre daily resync does not duplicate control reception import 8.902s
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Equilibre daily resync does not duplicate product imports 9.769s
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Equilibre without prepare sync reproduces duplicate imports 9.679s
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Equilibre orphan product import is relinked not duplicated 9.899s
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Easilys resync does not duplicate control reception and product imports 9.689s
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Compass resync does not duplicate control reception and product imports 9.090s
βœ… Tests.Unit.Api.ApiImportedDataDuplicatePreventionTest Get existing data depends on restaurant context 9.040s
⚠️ Tests.Unit.Api.EquilibreSyncFixtureBenchmarkTest Sync replay fixture is idempotent and reports timings 0.082s Sync replay fixture is idempotent and reports timingsErrorException: fwrite(): Write of 31 bytes failed with errno=32 Broken pipe at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at tests/Unit/Api/EquilibreSyncFixtureBenchmarkTest.php:121
βœ… Tests.Unit.AttachedFiles.AttachedFileSyncServiceTest SyncAttachedFile dispatches to action plan sync service by default 0.005s
βœ… Tests.Unit.AttachedFiles.AttachedFileSyncServiceTest SyncAttachedFile dispatches to audit sync service for audit action task 0.000s
βœ… Tests.Unit.AttachedFiles.AttachedFileSyncServiceTest SyncAttachedFile rejects unknown attachable type 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditsToSync enriches each audit with forbidden employees ids 0.004s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditDirectoriesToSync enriches audits ids and removes audits relation 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionsToSync prefixes consigne when present 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionsToSync leaves empty consigne untouched 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionsToSync forwards lastSync and withTrashed to repository 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditExtraActionsToSync delegates and returns array 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionTasksToSync skips tasks without allAuditAction or audit 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionTasksToSync sorts national before local and recomputes positions 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionTasksToSync aggregates images and uses last as task image 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionTasksToSync leaves image null when no images 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionTasksToSync copies fields from allAuditAction and unserializes extraActions 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAuditActionTasksToSync sets extraActions null when empty 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask returns status false when no id and no match by valid until 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask resolves by ovh id when tablet uses ovh 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask resolves directly by id when tablet has no ovh 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask resolves via 2023 11 17 hardcoded range and skips general fallback 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask falls through to general range when 2023 11 17 range is ambiguous 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask falls back to general day range for non 2023 11 17 dates 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask returns status false when day range fallback is ambiguous 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask does not update when task is already done 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask returns validation errors when task invalid without resolving ids 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask fills task and sets technical fields 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask resolves related ids after validation 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask returns success with id when save succeeds 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask returns failure without id when save fails 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask does not regenerate cycle when audit missing 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask does not regenerate cycle when period not finished 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask does not regenerate cycle when audit disabled for restaurant 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask treats unset client audits disabled as empty 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask does not regenerate cycle when achievement not done 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask regenerates into existing current record 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask regenerates into brand new record when none current 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask ignores invalid image and follows no image path 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask returns invalid image error when size zero 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask attaches image and saves when move and creation succeed 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAuditActionTask does not save when image creation fails 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage uses ovh lookup when tablet uses ovh 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage uses direct lookup when tablet has no ovh 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage returns status false when task not found 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage returns status false when image missing 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage returns status false when image invalid 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage returns invalid image error when size zero 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage uses task date not today for destination and returns created image 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest AddAuditActionTaskImage reports failure when created image does not exist 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAttachedFile returns invalid file error when file is null 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAttachedFile returns invalid file error when file not valid 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAttachedFile returns error when task not found 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAttachedFile returns error when storage fails 0.000s
βœ… Tests.Unit.Audits.AuditSyncServiceTest SyncAttachedFile returns success with record id on new file 0.001s
βœ… Tests.Unit.Audits.AuditSyncServiceTest GetAttachedFilesToSync delegates and returns array 0.000s
βœ… Tests.Unit.Audits.AuditTaskServiceTest GetEditData returns comments and documents for existing task 0.020s
βœ… Tests.Unit.Audits.AuditTaskServiceTest AddComment creates comment when text non empty 0.000s
βœ… Tests.Unit.Audits.AuditTaskServiceTest AddComment trims text before creating 0.000s
βœ… Tests.Unit.Audits.AuditTaskServiceTest AddComment is noop when text empty or blank 0.000s
βœ… Tests.Unit.Audits.AuditTaskServiceTest DeleteComment delegates to repository 0.000s
βœ… Tests.Unit.Audits.AuditTaskServiceTest DeleteDocument delegates to repository 0.000s
βœ… Tests.Unit.Audits.AuditTaskServiceTest GetDocumentForView delegates to repository 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetHistoryFilters returns static filters config 0.006s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetRecordsForHistory delegates to repository and returns its result 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetTasksForHistory delegates to repository with given perPage 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetTasksForHistory defaults perPage to 250 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest FindAuditRecordForExport delegates to repository 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest FindAuditRecordForExport returns null when not found 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest CanAccessRecordForExport returns false when record is null 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest CanAccessRecordForExport returns true when client guard regardless of authUserId 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest CanAccessRecordForExport returns true when not client guard and authUserId matches restaurant 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest CanAccessRecordForExport returns false when not client guard and authUserId does not match 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest BuildDirectPdfExportData returns null when record not found 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetXlsHistoryFilename uses user modules name 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetXlsTasksHistoryFilename returns fixed label 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetActionsPopupData returns null when record not found 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetPopupData returns default view without repository call when type is unknown 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest GetRecordDetailsById returns null when task not found 0.000s
βœ… Tests.Unit.Audits.AuditsHistoryServiceTest PrepareDocumentDownload returns file when linked task exists 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetIndexPageData groups audits by period 0.010s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest StoreAudit sets defaults and syncs contacts when save succeeds 0.001s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest StoreAudit does not sync contacts when save fails 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetEditPageData returns null when audit not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetEditPageData returns null when audit belongs to another restaurant 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetEditPageData returns full data when audit belongs to restaurant 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetTasksActionsPageData returns null when audit not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetTasksActionsPageData returns data without ownership check 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest UpdateAudit returns not found when audit missing 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest UpdateAudit returns not found when foreign audit and not same family 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest UpdateAudit falls through to not found when family matches but active key absent 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetShowPageData returns null when audit not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetShowPageData returns null when audit belongs to another restaurant 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetShowPageData returns audit and periods when owned 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DestroyAudit returns deleted false when audit not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DestroyAudit returns deleted false when foreign audit 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DestroyAudit returns deleted true when owned and delete succeeds 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DestroyAudit returns deleted false when delete fails 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest ImportXlsxRows returns status false when file invalid 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest ExportAuditActions returns null when audit not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest ReorderAudits upserts position for each valid id and skips empty 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest ReorderAudits skips id not found by repository 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest ReorderActions upserts position without active field 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest CreateAction returns null when audit not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest CreateAction defaults coefficent to one when empty 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest CreateAction keeps provided coefficent 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetCreateDirectoryPageData returns expected structure 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetEditDirectoryPageData returns null when directory not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetEditDirectoryPageData combines audits without directory and directory audits 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest SaveDirectory creates new directory with defaults when directoryId null 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest SaveDirectory uses provided name and color 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest SaveDirectory assigns new audits to directory when save succeeds 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest SaveDirectory does not assign audits when save fails 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest SaveDirectory update mode unassigns removed audits and keeps still selected ones 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DeleteDirectory returns deleted false when directory not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DeleteDirectory returns deleted false when foreign directory 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DeleteDirectory moves audits out when moveAudits true 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DeleteDirectory deletes audits when moveAudits false 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest DeleteDirectory returns deleted false when repository delete fails 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetShowDirectoryPageData returns null when directory not found 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest GetShowDirectoryPageData groups audits by period without ownership check 0.000s
βœ… Tests.Unit.Audits.AuditsParametersServiceTest ToggleDirectoryActive returns status false when directory not found 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest GetTaskDetailData returns null when task not found 0.016s
βœ… Tests.Unit.Audits.LocalAuditServiceTest GetTaskDetailData returns task and extraActions when found 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest GetTaskDetailData passes null auditActionId when no auditAction 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTask returns null when task not found 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTask returns success true and task when update succeeds 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTask returns success false when update fails 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch skips task not found by repository 0.003s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch skips update when rate empty 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch updates task with expected data when rate present 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch defaults comment and extraActions when absent 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch calls tasksUpdated once when auditRecord present 0.001s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch does not call tasksUpdated when no auditRecord 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch retains audit and auditRecord from first resolving task 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch does not regenerate cycle when period is not finished 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest UpdateTasksBatch does not regenerate cycle when achievement is not done 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest RemoveTaskImage returns false when image not found 0.000s
βœ… Tests.Unit.Audits.LocalAuditServiceTest CheckDirectoryPassword returns true when password matches 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetIndexData returns empty collections and null employee 0.009s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetTasksPageData returns null 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetTaskDetailData returns null when entity is null 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetTaskDetailData scopes lookup to client restaurant ids 0.001s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetTaskDetailData returns task and extraActions when found 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetTaskDetailData passes null auditActionId when no auditAction 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest UpdateTask returns null 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest UpdateTasksBatch is a noop 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest AddTaskImage returns null 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest RemoveTaskImage returns false 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest GetDirectoryViewData returns periods and directory with empty audits 0.000s
βœ… Tests.Unit.Audits.MultiAuditServiceTest CheckDirectoryPassword returns true when password matches 0.000s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetShowPageData returns audits and folders from repository 0.007s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetAreaPopupData uses new audit and includes all periods when id is null 0.000s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetAreaPopupData uses existing audit and filters periods to its own period 0.000s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetAreaPopupData parent values only include audits without actions 0.000s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetActionPopupData creates new action when actionId is null 0.000s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetActionPopupData finds local override action when actionId given 0.000s
βœ… Tests.Unit.Audits.SimpleAuditsParametersServiceTest GetActionPopupData returns null audit when audit not found even with trashed 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanObserverTest Activating parent propagates to children 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanObserverTest Deactivating parent propagates to children 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanObserverTest Unchanged value does not touch children 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanObserverTest Parent without children does not throw 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Always expected valid until without expiration uses year 3000 0.004s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Always expected valid until with expiration adds days from valid from 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Always expected valid until when valid from null uses fallback now 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Valid from copy is not mutated when computing expected until 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Day skip when closed and week closure covers task slot 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Day not skipped when restaurant marked open 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Frequency loop indices match service loop 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Frequency one does not require index number in query 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Frequency greater than one requires index per iteration 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Always branch should create new row when expected until already passed 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Always branch should not create new row when expected until still future 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGenerationPureLogicTest Idempotence window same calendar day 0.000s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Nat plan disabled at loc does not generate tasks 0.131s
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Nat action disabled at loc does not generate tasks 0.105s Nat action disabled at loc does not generate tasksErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/5b/0d/5b0d65c20856e27d1d96d5c47bf363b7c9754eb3): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Closed restaurant stops generation 0.106s Closed restaurant stops generationErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/e2/76/e276ebc58d8820f0672d946f96e46245842601af): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at vendor/laravel/
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Always is idempotent then regenerates when expired path hits 0.135s
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Frequency increase from one reuses existing task as main 0.111s Frequency increase from one reuses existing task as mainErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/bb/67/bb67471e1d1b1934b13b603b5d526951f81cee58): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Frequency generates indexed children linked to first task 0.106s Frequency generates indexed children linked to first taskErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/2f/df/2fdf1732c23ef48ef25c59d57c3b34c2e7dd1edb): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Only action id generates only target action tasks 0.120s Only action id generates only target action tasksErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/1c/48/1c48f5479c0514a249ac6671db043b94547b5fe6): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Always updates valid until without modifying existing valid from 0.143s
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Always friday only with expiration catch up after expiry on saturday 0.117s Always friday only with expiration catch up after expiry on saturdayErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/24/6c/246c86618f35012a272db419c892b693b9635fed): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExc
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Loc action on nat plan still generates when nat action disabled at loc 0.112s Loc action on nat plan still generates when nat action disabled at locErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/44/2e/442e795ffb716cbb9333fd7a4891384ee52acbbe): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleE
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Day task not skipped when week closure does not cover full action slot 0.127s Day task not skipped when week closure does not cover full action slotErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/96/4b/964b570a3ebe18e2b5feeb5502da1180bf498b0b): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleE
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Day task skipped when week closure covers full action slot 0.127s Day task skipped when week closure covers full action slotErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/b5/14/b514e19f75bafc260c133efb5098d934f993f210): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.ph
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Day task skipped when week closure is full day with same start end hour 0.115s Day task skipped when week closure is full day with same start end hourErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/1e/eb/1eeb6e122e5d9bbaef0c3f61b779503b8a6e4d73): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/Handle
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Frequency generation is idempotent on same period window 0.112s Frequency generation is idempotent on same period windowErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/40/a3/40a3079807e2e5ce88635f3523ed3a661d86077c): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Week task skipped when restaurant closed all week period 0.141s
βœ… Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Nat parent disabled blocks child nat action generation regression 0.114s
⚠️ Tests.Unit.CleaningPlan.CleaningPlanTaskGeneratorServiceIntegrationTest Nat loc disabled and several generations 0.150s Nat loc disabled and several generationsErrorException: fopen(/var/www/octopus-haccp/storage/framework/cache/fb/5e/fb5ec57b09f5025ab370b99b2439403cac4eb881): Failed to open stream: Permission denied at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at vendor/la
βœ… Tests.Unit.CleaningPlan.RestaurantCleaningPlanActionActiveTest Active zero disables family action 0.048s
βœ… Tests.Unit.CleaningPlan.RestaurantCleaningPlanActionActiveTest Active one keeps family action when not disabled list 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantIsClosedAllPeriodTest Period closure covers full week range returns true 0.017s
βœ… Tests.Unit.CleaningPlan.RestaurantIsClosedAllPeriodTest Week all day closure every weekday in range returns true 0.001s
βœ… Tests.Unit.CleaningPlan.RestaurantIsClosedAllPeriodTest Week closure only weekends range has open weekday returns false 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantIsClosedAllPeriodTest Single date closure on same day returns true 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantIsClosedAllPeriodTest No closures returns false 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Loc action active when restaurant id matches and active one 0.005s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Loc action inactive when active zero 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat action active when family matches and no disabled list 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat action inactive when disabled for plan at loc 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat action still active when sibling action disabled on same plan 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat action inactive when national row inactive without effective override 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat action inactive when active zero even if base active one 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat action false when family mismatch 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Loc action uses effective not only base active for restaurant row 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Loc action on nat plan evaluated as restaurant row 0.000s
βœ… Tests.Unit.CleaningPlan.RestaurantNatLocCleaningPlanActionTest Nat disabled list ignored for pure loc action same restaurant id 0.000s
βœ… Tests.Unit.Common.ExportToSpreadsheetActionTest Writes rows to file 0.056s
βœ… Tests.Unit.Common.ExportToSpreadsheetActionTest Writes a file when there are no rows 0.004s
βœ… Tests.Unit.Common.ReadSpreadsheetActionTest Reads rows keyed by header 0.011s
βœ… Tests.Unit.Export.AuditRecordExportTest No action plan returns non and dash 0.006s
βœ… Tests.Unit.Export.AuditRecordExportTest Action plan with description returns oui and description 0.001s
βœ… Tests.Unit.Export.AuditRecordExportTest Action plan with null description falls back to dash 0.000s
βœ… Tests.Unit.Loggers.ContactsSnapshotBuilderTest snapshot marks all channels active with empty skipped_reason 9.163s
βœ… Tests.Unit.Loggers.ContactsSnapshotBuilderTest snapshot marks contact in closed dates with skipped_reason closed_dates 8.882s
βœ… Tests.Unit.Loggers.ContactsSnapshotBuilderTest snapshot marks inactive channels and nc alerts with distinct skipped_reason 9.140s
βœ… Tests.Unit.Loggers.DizzyChartPeriodBuilderTest dizzy chart periods pair started and ended within day 0.009s
βœ… Tests.Unit.Loggers.DizzyChartPeriodBuilderTest dizzy chart periods continue open dizzy until end of day 0.000s
βœ… Tests.Unit.Loggers.DizzyChartPeriodBuilderTest dizzy chart periods inherit dizzy state from before day start 0.000s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest chart svg renders a polyline for multiple temperature points 0.046s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest chart svg is empty with fewer than two points 0.039s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest mail context builder exposes dizzy period stats 0.043s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest mail context builder exposes compliant since for back to normal 0.041s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest mail context builder uses window scope for dizzy back to normal with started 0.042s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy mail stats include ignored logs in window scope 0.042s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy temperature issue chart uses logs since dizzy started while stats stay on window 0.042s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest mail context builder exposes dizzy ended period recap 0.040s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended stats include ignored logs like the chart 0.041s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended temp resolved exposes compliant since from reference log 0.044s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended temp appeared does not expose compliant since 0.041s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended period start uses dizzy started when older than sliding window 0.042s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended temp appeared exposes anomaly started at from reference log 0.042s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended period start uses sliding window when dizzy started is more recent 0.043s
βœ… Tests.Unit.Loggers.DizzyTemperatureIssueMailTest dizzy ended mail context uses recap ended_at instead of now for stats and chart 0.042s
⚠️ Tests.Unit.Loggers.FridgeLoggerRefactorBenchmarkTest Stable ok reports refactored overhead vs legacy 28.859s Stable ok reports refactored overhead vs legacyErrorException: fwrite(): Write of 43 bytes failed with errno=32 Broken pipe at vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:258 at tests/Unit/Loggers/FridgeLoggerRefactorBenchmarkTest.php:50
βœ… Tests.Unit.Loggers.FridgeLoggerRefactorBenchmarkTest Query profiler classifies sql 9.142s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter reports logger-level exclusion when contacts would be eligible 0.051s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter reports all-contacts exclusion when every channel is excluded 0.051s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter reports no active subscribers when contacts are inactive 0.045s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter filters out contacts without nc alerts subscription 0.050s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter shows contact name only without email or phone 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter labels contact exclusion as exclusion alertes capteurs 0.044s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest generatesMailOrSms excludes dizzy_started 0.040s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest generatesMailOrSms excludes dizzy_ended without mail variant 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest generatesMailOrSms includes dizzy_ended with mail variant or alert_sent 0.039s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest generatesMailOrSms includes temperature issue 0.040s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest presenter labels temperature issue after dizzy ended 0.040s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest appearsInAlertHistory includes dizzy_started without notification 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest appearsInAlertHistory includes dizzy ended without variant 0.042s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest countNotifications tallies sent and not sent mail or sms events 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest sentAlertsIndexByLogId groups sent contacts by channel 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest formatSentAlertLinesForLog shows sms and email lines with contacts 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest formatSentAlertLinesForLog shows only sms when email was not sent 0.041s
βœ… Tests.Unit.Loggers.LoggerAlertEventPresenterTest formatSentAlertLinesForLog returns empty when no sent events exist for log 0.042s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest chart alert markers use linked log coordinates 0.083s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest chart alert markers style back to normal with green checkmark 0.040s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest chart alert markers style dizzy ended temp resolved like back to normal 0.039s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest chart alert markers style dizzy ended recap as black icon on white 0.040s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest chart alert markers skip dizzy ended temp appeared 0.040s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest chart alert markers skip events without mail or sms 0.039s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest alert marker style uses grey for unsent alerts 0.044s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest dizzy ended temp appeared is excluded from chart 0.062s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest dizzy ended with prior alerts uses white recap style 0.041s
βœ… Tests.Unit.Loggers.LoggerChartAlertMarkerBuilderTest icon char from class returns utf8 glyph 0.040s
βœ… Tests.Unit.Loggers.LoggerExclusionChartPeriodBuilderTest exclusion chart periods ignore contact-level exclusions 0.023s
βœ… Tests.Unit.Loggers.LoggerExclusionChartPeriodBuilderTest exclusion chart periods support full-day date exclusions 0.000s
βœ… Tests.Unit.Loggers.LoggerExclusionChartPeriodBuilderTest exclusion chart periods merge overlapping week ranges 0.000s
βœ… Tests.Unit.Loggers.NoDataAlertCoordinatorTest applyReconnectContext flags pending no data alert 9.280s
βœ… Tests.Unit.Loggers.NoDataAlertCoordinatorTest resolveViaTemperatureReconnect clears flags and records merged resolution event 9.028s
βœ… Tests.Unit.Loggers.RestaurantIdFilterTest restaurant id filter parses single id 0.006s
βœ… Tests.Unit.Loggers.RestaurantIdFilterTest restaurant id filter parses comma separated ids 0.000s
βœ… Tests.Unit.Loggers.RestaurantIdFilterTest restaurant id filter trims spaces and deduplicates 0.000s
βœ… Tests.Unit.Loggers.RestaurantIdFilterTest restaurant id filter returns null for empty value 0.000s
βœ… Tests.Unit.Loggers.RestaurantIdFilterTest restaurant id filter rejects invalid tokens 0.002s
βœ… Tests.Unit.Loggers.StableTemperatureMailTest stable mail context builder starts chart fifteen minutes before anomaly 0.053s
βœ… Tests.Unit.Loggers.StableTemperatureMailTest stable mail context builder exposes compliant since on resolution 0.041s
βœ… Tests.Unit.Loggers.TemperatureIssueContextTest back_to_normal during exclusion resolves a deferred temperature issue 9.010s
βœ… Tests.Unit.Loggers.TemperatureIssueContextTest deferred issue without resolution stays pending 9.150s
βœ… Tests.Unit.Loggers.TemperatureReminderEvaluatorTest reminder is not sent in the same batch as a fresh temperature issue 9.257s
βœ… Tests.Unit.Loggers.TemperatureReminderEvaluatorTest reminder uses the latest issue after context refresh 8.838s
βœ… Tests.Unit.Loggers.TemperatureReminderEvaluatorTest reminder is sent two hours after the active issue 9.263s
βœ… Tests.Unit.Loggers.TemperatureReminderEvaluatorTest pending temperature issue suppressed by dizzy ended is never sent later 8.936s
βœ… Tests.Unit.Mail.MailPitTagsTest adds X-Tags header when mailpit_tags is configured 0.056s
βœ… Tests.Unit.Mail.MailPitTagsTest does nothing when mailpit_tags is empty 0.043s
βœ… Tests.Unit.Mail.MailPitTagsTest does not overwrite an existing X-Tags header 0.042s
βœ… Tests.Unit.Mail.MailSimulatedTimestampTest sets mail date header from carbon test now 0.048s
βœ… Tests.Unit.Mail.MailSimulatedTimestampTest does nothing when carbon test now is not set 0.040s
βœ… Tests.Unit.Mail.MailSimulatedTimestampTest can prefix subject when LOGGER_MAIL_SUBJECT_SIMULATED_TIME is enabled 0.041s
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Backoffice pages are reachable 0.000s Backoffice pages are reachableIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and type = 'table') as
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Can update dynamic areas and section fields 0.000s Can update dynamic areas and section fieldsIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and type
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Rich text validates plain text length not html length 0.000s Rich text validates plain text length not html lengthIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections'
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Content title validates max string length 0.000s Content title validates max string lengthIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and type =
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Home sections title validates max string length 0.000s Home sections title validates max string lengthIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and t
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Related article title validates max string length on content store 0.000s Related article title validates max string length on content storeIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'acad
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Content title validates max string length on content store 0.000s Content title validates max string length on content storeIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sect
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front renders rich text html unescaped 0.000s Front renders rich text html unescapedIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and type = 'ta
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Can search existing tags for backoffice autocomplete 0.000s Can search existing tags for backoffice autocompleteIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections'
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Video content draft then publish then toggle from list then delete 0.000s Video content draft then publish then toggle from list then deleteIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'acad
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Document flow with thematics and front visibility 0.000s Document flow with thematics and front visibilityIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front home section and content pages are reachable 0.000s Front home section and content pages are reachableIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' an
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front content detail displays related articles before similar contents 0.000s Front content detail displays related articles before similar contentsIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = '
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front content detail shows similar contents ordered by shared tags without thematics 0.000s Front content detail shows similar contents ordered by shared tags without thematicsIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front content detail fills similar contents with section peers without shared tags 0.000s Front content detail fills similar contents with section peers without shared tagsIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master wh
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front content detail prioritizes same thematic before other similar contents 0.000s Front content detail prioritizes same thematic before other similar contentsIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where na
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front shows only active and published contents and blocks others 0.000s Front shows only active and published contents and blocks othersIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academ
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front returns 404 for unknown section or unknown content 0.000s Front returns 404 for unknown section or unknown contentIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sectio
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front section without thematics is still reachable without thematic filter bar 0.000s Front section without thematics is still reachable without thematic filter barIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front section search and thematic filters apply across pagination 0.000s Front section search and thematic filters apply across paginationIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'acade
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front section search matches content tags 0.000s Front section search matches content tagsIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and type =
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front uses default thumbnail logo when content thumbnail is missing 0.000s Front uses default thumbnail logo when content thumbnail is missingIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'aca
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front home does not render sections without slug 0.000s Front home does not render sections without slugIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Youtube url formats are supported on front 0.000s Youtube url formats are supported on frontIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy_sections' and type =
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Front access is forbidden when restaurant has no academy access 0.000s Front access is forbidden when restaurant has no academy accessIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name = 'academy
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Courses can be created and are visible on front section when upcoming and published 0.000s Courses can be created and are visible on front section when upcoming and publishedIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master w
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Backoffice courses list orders drafts first then published by ascending date 0.000s Backoffice courses list orders drafts first then published by ascending dateIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where na
⚠️ App.Modules.Academy.Tests.AcademyModuleFeatureTest Courses draft cannot be activated publish and activate endpoint publishes 0.000s Courses draft cannot be activated publish and activate endpoint publishesIlluminate\Database\QueryException: could not find driver (Connection: sqlite, Database: /var/www/octopus-haccp/app/Modules/Academy/Tests/academy_module.sqlite, SQL: select exists (select 1 from "main".sqlite_master where name
βœ… App.Modules.Academy.Tests.AcademyRichTextTest Plain text length ignores html tags 0.010s
βœ… App.Modules.Academy.Tests.AcademyRichTextTest Plain text length collapses whitespace 0.000s
βœ… App.Modules.Academy.Tests.AcademyRichTextTest Exceeds max plain text length 0.000s
βœ… App.Modules.Academy.Tests.AcademyRichTextTest Html longer than column limit passes when plain text within limit 0.000s
βœ… App.Modules.Alert.Tests.AlertServiceTest Update audit alerts writes client and cascades to contacts 0.030s
βœ… App.Modules.Alert.Tests.AlertServiceTest Update audit alerts can disable 0.000s
βœ… App.Modules.Auth.Tests.AuthGuardTest From entity returns admin for admin model 0.048s
βœ… App.Modules.Auth.Tests.AuthGuardTest From entity returns client for client model 0.042s
βœ… App.Modules.Auth.Tests.AuthGuardTest From entity returns web for restaurant model 0.043s
βœ… App.Modules.Auth.Tests.AuthGuardTest From entity returns central for restaurant central model 0.044s
βœ… App.Modules.Auth.Tests.AuthGuardTest From userable type maps all known types 0.043s
βœ… App.Modules.Auth.Tests.AuthGuardTest From userable type throws for unknown type 0.042s
βœ… App.Modules.Auth.Tests.AuthGuardTest From domain returns admin for superpoulpe domain 0.042s
βœ… App.Modules.Auth.Tests.AuthGuardTest From domain returns client for clients domain 0.045s
βœ… App.Modules.Auth.Tests.AuthGuardTest From domain returns web for app domain 0.046s
βœ… App.Modules.Auth.Tests.AuthGuardTest From domain returns null for unknown domain 0.043s
βœ… App.Modules.Auth.Tests.AuthGuardTest From request returns central for app domain with central prefix 0.047s
βœ… App.Modules.Auth.Tests.AuthGuardTest From request returns web for app domain without central prefix 0.043s
βœ… App.Modules.Auth.Tests.AuthGuardTest From request returns null for unknown domain 0.044s
βœ… App.Modules.Auth.Tests.AuthGuardTest Get redirect route name returns expected routes 0.042s
βœ… App.Modules.Auth.Tests.AuthGuardTest Model returns correct model class for each guard 0.044s
βœ… App.Modules.Auth.Tests.AuthGuardTest Get impersonation entry route name returns null for admin 0.042s
βœ… App.Modules.Auth.Tests.AuthGuardTest Get impersonation entry route name returns route for impersonable guards 0.042s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate returns null when no users match login 0.157s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate throws inactive when user is inactive 0.098s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate throws inactive when entity is inactive 0.105s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate throws use credentials disabled when sso only 0.109s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate throws password expired when highly secured and expired 0.100s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate does not throw when highly secured password is valid 0.106s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate does not check expiry when not highly secured 0.100s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate skips expiry check when no client 0.100s
βœ… App.Modules.Auth.Tests.AuthServiceTest Authenticate throws password expired for client entity 0.046s
βœ… App.Modules.Auth.Tests.ConsumeRestaurantTempPasswordActionTest Returns false when no temp password set 0.066s
βœ… App.Modules.Auth.Tests.ConsumeRestaurantTempPasswordActionTest Returns false when password does not match 0.044s
βœ… App.Modules.Auth.Tests.ConsumeRestaurantTempPasswordActionTest Returns false when expired 0.044s
βœ… App.Modules.Auth.Tests.ConsumeRestaurantTempPasswordActionTest Returns false when no expiry set 0.044s
βœ… App.Modules.Auth.Tests.ConsumeRestaurantTempPasswordActionTest Consumes and returns true when valid 0.045s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Consume token returns false when token does not match 0.064s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Consume token returns false when token is expired 0.045s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Consume token returns true and clears token when valid 0.045s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Consume token accepts token exactly at ttl boundary 0.045s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Is impersonating returns false when no session 0.046s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Start impersonation pushes layer to stack 0.042s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Start impersonation supports multi level stack 0.041s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Start impersonation with parent stack uses parent as base 0.043s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Current layer returns null when not impersonating 0.042s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Leave pops top layer and returns return url 0.044s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Leave clears legacy session keys 0.042s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Leave in multi level stack keeps remaining layers 0.043s
βœ… App.Modules.Auth.Tests.ImpersonationServiceTest Leave without stack falls back to app login route 0.045s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Client constraints use client type and own id 0.078s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Client manager constraints use parent id not subclient id 0.043s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Client and restaurant with same numeric id have distinct types 0.043s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Restaurant constraints exclude admin role 0.044s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Central constraints match username as email 0.043s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Constraints for unknown entity throws 0.044s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Execute falls back to app login when no user found 0.045s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Execute logs in resolved user and returns auth redirect 0.043s
βœ… App.Modules.Auth.Tests.LoginAfterPasswordResetActionTest Execute never calls login with a raw entity 0.049s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate throws invalid when login token not found 0.076s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate via password returns restaurant when credentials match 0.044s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate throws invalid when all credential paths fail 0.042s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate via temp password succeeds when not expired 0.049s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate via temp password throws invalid when expired 0.048s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate throws inactive when restaurant is inactive 0.045s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate throws password expired when highly secured and expired 0.046s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate succeeds without client 0.045s
βœ… App.Modules.Auth.Tests.MobileAuthServiceTest Authenticate succeeds with non highly secured client 0.048s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Client not highly secured returns not highly secured 0.071s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Client never changed password returns expired 0.054s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Client changed recently returns valid 0.046s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Client within 7 days of expiry returns expiring soon 0.046s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Client past 180 days returns expired 0.046s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant with no client returns not highly secured 0.049s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant client not highly secured returns not highly secured 0.062s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant never changed password returns expired 0.061s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant changed recently returns valid 0.049s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant within 7 days of expiry returns expiring soon 0.053s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant past 180 days returns expired 0.048s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant tablet out of sync returns password change required 0.064s
βœ… App.Modules.Auth.Tests.PasswordExpirationServiceTest Restaurant tablet with null last sync skips password change check 0.057s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Generate reset token stores token on user 0.078s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Generate reset token returns 64 char hex string 0.045s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Generate reset token sets expiry one hour in future 0.045s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Validate token returns true when token matches and not expired 0.046s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Validate token returns false when token does not match 0.046s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Validate token returns false when token is expired 0.046s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Validate token returns false when timestamp is null 0.046s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Consume token hashes password and clears token 0.212s
βœ… App.Modules.Auth.Tests.RestaurantAdminAuthServiceTest Consume token skips restaurant sync when userable missing 0.154s
βœ… App.Modules.Auth.Tests.SendPasswordExpiredResetLinkActionTest Sends via users broker for restaurant 0.070s
βœ… App.Modules.Auth.Tests.SendPasswordExpiredResetLinkActionTest Sends via clients broker for client 0.044s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Create conversation throws when no participant is selected 0.058s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Update conversation throws when not found 0.044s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Update conversation throws when wrong restaurant 0.048s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Add message creates message and marks as read 0.063s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Mark conversation as read calls repository 0.047s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Delete conversation calls repository 0.045s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Get unread overview returns total and counts by accessible restaurant 0.044s
⚠️ App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Unread count increases for other participant when one sends messages 9.326s Unread count increases for other participant when one sends messagesIlluminate\Database\QueryException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'users.deleted_at' in 'WHERE' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: octopus_auto_tests, SQL: select * from `users` where
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Create conversation with message creates message 0.046s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Bridge client user resolves via manager service 0.045s
βœ… App.Modules.ComInApp.Tests.ComInAppConversationServiceTest Bridge client user sets null when no matching user 0.046s
βœ… App.Modules.ComInApp.Tests.ComInAppServiceTest Add unread message count to employees adds count to employees 0.074s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Search delegates to repository 0.006s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Search passes null term 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Create hashes password and persists all fields 0.001s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Create stores null password when none provided 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Find or fail delegates to repository 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Update passes dto array to repository 0.002s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Update hashes password when present in dto array 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Update does not add password when absent from dto array 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Update propagates repository false 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Delete finds admin then delegates deletion 0.000s
βœ… App.Modules.Users.Admin.Tests.AdminServiceTest Delete propagates repository false 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest All for central delegates to repository 0.007s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync creates user when no id provided 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync skips creation when email is empty 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync with empty array does nothing 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync updates email when id matches 0.001s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync updates password when provided 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync skips when user not found for id 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync deletes user when delete flag set 0.000s
βœ… App.Modules.Users.Central.Tests.CentralManagerServiceTest Sync handles mixed operations 0.001s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest All delegates to repository 0.007s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Find or fail delegates to repository 0.000s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Create persists central and creates user 0.001s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Create passes null restaurants as empty array 0.000s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Update persists data and syncs user email 0.002s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Update strips empty password before passing to repository 0.000s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Update does not call user save when no user found 0.000s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Update propagates repository false 0.000s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Delete finds central then delegates 0.000s
βœ… App.Modules.Users.Central.Tests.CentralServiceTest Delete propagates repository false 0.000s
βœ… App.Modules.Users.Client.Tests.BuildManagerExportRowTest Builds row from bridge client 0.044s
βœ… App.Modules.Users.Client.Tests.BuildManagerExportRowTest Blank names stay empty 0.044s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Find or fail delegates to repository 0.007s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Sync creates new family when no id 0.001s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Sync skips new family when name is empty 0.000s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Sync updates existing family 0.000s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Sync deletes family without restaurants 0.000s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Sync throws when deleting family with restaurants 0.000s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Delete removes family without restaurants 0.000s
βœ… App.Modules.Users.Client.Tests.ClientFamilyServiceTest Delete throws when family has restaurants 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Find or fail delegates to repository 0.007s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Create many persists each non empty name 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Create many skips empty names 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Update delegates to repository with name 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Delete finds then delegates 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Sync existing updates groups without delete flag 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Sync existing deletes groups with delete flag 0.000s
βœ… App.Modules.Users.Client.Tests.ClientGroupServiceTest Sync existing handles mixed operations 0.000s
βœ… App.Modules.Users.Client.Tests.ClientPolicyTest Manage audit alerts allows own manager 0.005s
βœ… App.Modules.Users.Client.Tests.ClientPolicyTest Manage audit alerts allows self 0.000s
βœ… App.Modules.Users.Client.Tests.ClientPolicyTest Manage audit alerts denies another hierarchy 0.000s
βœ… App.Modules.Users.Client.Tests.ClientPolicyTest Manage audit alerts denies managers from another client 0.000s
βœ… App.Modules.Users.Client.Tests.ClientPolicyTest Manage audit alerts denies when current entity is not a client 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest All delegates to repository 0.007s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Find or fail delegates to repository 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Create hashes password and sets is superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Create maps all dto fields 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Update passes dto array to repository 0.002s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Update cascades highly secured password to children 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Update does not cascade when highly secured password absent 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Update cascades use credentials to children 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Update propagates repository false 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Delete finds client and delegates 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Toggle updates only is active 0.000s
βœ… App.Modules.Users.Client.Tests.ClientServiceTest Count restaurants counts all for client 0.000s
βœ… App.Modules.Users.Client.Tests.ExportManagersJobTest Exports managers and notifies with a downloadable file 0.108s
βœ… App.Modules.Users.Client.Tests.ImportManagersJobTest Imports valid rows and reports errors for invalid ones 0.127s
βœ… App.Modules.Users.Client.Tests.ImportManagersJobTest Reports a friendly error when the spreadsheet file cannot be read 0.043s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest View any allows superadmin 0.007s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest View any denies manager role 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest View any denies when no authenticated user 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Create allows superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Create denies manager role 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Edit allows self even when not superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Edit denies when manager belongs to another client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Edit denies manager role editing someone else 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Edit allows superadmin editing another manager in same client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage denies self 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage allows self when impersonating from superpoulpe and another superadmin exists 0.001s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage still denies self when impersonating from client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage denies self via superpoulpe impersonation when only one active superadmin left 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage denies when manager belongs to another client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage denies manager role as actor 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage allows non superadmin target regardless of superadmin count 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage denies superadmin target when no active superadmin left 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage denies superadmin target when it is the only active superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Manage allows superadmin target when more than one active superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Restaurants access denies superadmin target 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerPolicyTest Restaurants access allows non superadmin target 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest All for client delegates to repository 0.010s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest All for client passes null term 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Find manager or fail delegates to repository 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Find user sub client delegates to client repository 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Find user for client delegates to repository 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Find first active superadmin delegates to repository 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Create sets parent id hashes password and marks active 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Create maps all optional dto fields 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Create throws duplicate manager exception on integrity violation 0.001s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Create rethrows other query exceptions 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update syncs sub client when it exists 0.002s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update writes to main client when no sub client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update strips empty password instead of overwriting it 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update stamps password last changed at on sub client only when password set 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update translates role to is superadmin for sub client only 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update clears restaurants and families access when promoted to superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update does not touch restaurants or families access when staying manager 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update propagates repository false 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Delete deletes sub client and user when sub client exists 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Delete only deletes user when no sub client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Delete propagates repository false 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update restaurant access writes to main client when no sub client 0.001s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Update restaurant access writes to sub client when it exists 0.001s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Get index view data attaches sub client and computed fields 0.001s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Get index view data defaults when no sub client 0.000s
βœ… App.Modules.Users.Client.Tests.ManagerServiceTest Get index view data shows total restaurants for superadmin 0.000s
βœ… App.Modules.Users.Client.Tests.MapImportRowToStoreDTOTest Maps basic fields 0.017s
βœ… App.Modules.Users.Client.Tests.MapImportRowToStoreDTOTest Resolves family names to ids 0.000s
βœ… App.Modules.Users.Client.Tests.MapImportRowToStoreDTOTest Maps oui non to booleans 0.000s
βœ… App.Modules.Users.Client.Tests.PromoteManagerToSuperadminTest Returns data unchanged when role is absent 0.004s
βœ… App.Modules.Users.Client.Tests.PromoteManagerToSuperadminTest Sets is superadmin false when staying manager 0.000s
βœ… App.Modules.Users.Client.Tests.PromoteManagerToSuperadminTest Clears access and enables options when promoted to superadmin 0.000s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest All delegates to repository with restaurant id 0.005s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest All passes null term 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Find or fail returns employee when found 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Find or fail aborts when not found 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create passes restaurant id and basic fields 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create defaults color when null 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create resolves dlc both 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create resolves dlc only edit dlc 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create defaults action plan edit level to full when null 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create keeps provided action plan edit level 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Create calls sync relations with dto arrays 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Update active only sets flag and saves without full update 0.012s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Update strips empty password 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Update keeps non empty password 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Update does not call sync when save fails 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Delete delegates to repository 0.001s
βœ… App.Modules.Users.Employee.Tests.LocalEmployeeServiceTest Bulk delete delegates with restaurant id 0.001s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest All delegates to repository with family id 0.019s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest All passes null term 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Find or fail returns employee when found 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Find or fail aborts when not found 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Create passes family id and basic fields 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Create touches family timestamp 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Delete delegates to repository and returns true 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Delete does not touch timestamp when repository fails 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Update throws bad method call exception 0.000s
βœ… App.Modules.Users.Employee.Tests.MultiEmployeeServiceTest Bulk delete throws bad method call exception 0.000s