Kevin L'Hereec
|
76e75132d5
|
test: raise business-logic unit test coverage across core services
Build & Deploy / build (push) Successful in 34s
Build & Deploy / docker (push) Successful in 1m19s
Build & Deploy / deploy (push) Successful in 37s
Adds targeted unit tests to cover previously untested branches/functions
in the business-critical (non-protocol) services:
- device_service.ts: 35.8% -> 98.76% (CRUD, executeCommand, refreshDevice,
calculatePagination, IPv4/IPv6 Connection Request fallback chain)
- domain/device/device.ts: 76.7% -> 96.59% (GPN circuit breaker state
machine, session lifecycle, canExecuteCommands, detectDataModelFromParams)
- services/references/reference_engine.ts: 78.66% -> 100% (provider
loading edge cases, rejection handling, singleton lifecycle)
- services/configuration_engine.ts: 70.96% -> 98.7% (matchesCriteria
branches, shouldApplyOnce policy variants, dryRun, complianceReport)
- services/cwmp/state_machine_manager.ts: 70.9% -> 87.27% (getHashIdForRemoteIp,
ensureSessionForRemote IP fallback, task callback error handling)
- services/cwmp/main_state_machine.ts: 57.79% -> 94.29% (ExecutingCommandsState
full command-type dispatch, MAX_STATE_TRANSITIONS guard, error->
PartialOperationalState transitions)
Also fixes:
- reference_engine_full.spec.ts previously depended on the real
config/references.json (production config, wassup provider legitimately
disabled there) instead of a test fixture — now mocks config_loader
for deterministic, isolated assertions
- main_state_machine.spec.ts CommandModel.getCollection mock returned a
new object per call instead of a shared instance, breaking
setupCommandMock() for the new command-dispatch tests
Overall project coverage (excluding protocol/): 72.76% -> 82.34% statements.
Full suite: 1005/1005 tests passing.
|
2026-07-22 11:45:50 +02:00 |
|
 Kevin L'HereecandCopilot
|
d1c65dbf1e
|
chore: initial commit — AdonisJS v7 TR-069 ACS
- Docker infrastructure (Dockerfile, docker-compose.yml, genieacs-sim)
- AdonisJS v7 app with Inertia.js + Vue 3
- MongoDB integration
- CWMP/TR-069 state machine engine
- Configuration engine with compliance tracking
- Branding: ADAM ACS (favicon, navbar, locales)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
2026-05-29 16:46:37 +02:00 |
|