- replace legacy mockito-all with mockito-junit-jupiter - add tests for AppState, MQTT service, process manager, and animation file service - rewrite service tests for stronger edge-case coverage - refactor services for testability (MQTT client/process launcher/output path injection) - fix duplicate payload ID handling in BinaryEventService - update README and docs testing/source-map sections
67 lines
2.0 KiB
Markdown
67 lines
2.0 KiB
Markdown
# Source Map
|
|
|
|
Package-level map of all Java source files in `src/main/java` and tests in `src/test/java`.
|
|
|
|
## Main Sources
|
|
|
|
### `vassistent`
|
|
|
|
- `App.java`: application entry point and shutdown hook logic
|
|
|
|
### `vassistent.bootstrap`
|
|
|
|
- `ApplicationContext.java`: container for shared services/state
|
|
- `ApplicationInitializer.java`: wiring and startup sequence
|
|
- `ApplicationShutdownManager.java`: managed shutdown sequence
|
|
|
|
### `vassistent.controller`
|
|
|
|
- `AppWindowController.java`: main window lifecycle and state-driven UI updates
|
|
- `DashboardController.java`: chart and level updates on state changes
|
|
- `StreamingController.java`: stream view actions (reload/focus)
|
|
|
|
### `vassistent.model`
|
|
|
|
- `AppState.java`: observable app state
|
|
- `DatabaseEntry.java`: persisted event value + timestamp
|
|
- `ProblemLevel.java`: risk level enum
|
|
- `RatioPoint.java`: chart point model
|
|
|
|
### `vassistent.service`
|
|
|
|
- `AnimationFileService.java`: writes animation state JSON file
|
|
- `BinaryEventService.java`: payload validation + dispatch
|
|
- `DataPersistenceService.java`: SQLite init and CRUD-like methods
|
|
- `EvaluationService.java`: ratio-to-problem-level mapping
|
|
- `MqttClientService.java`: MQTT connectivity and callbacks
|
|
- `ProcessManagerService.java`: optional process startup/shutdown
|
|
- `StatisticsService.java`: ratio and rolling-avg computations
|
|
|
|
### `vassistent.ui`
|
|
|
|
- `AppWindow.java`: root frame with tabbed layout
|
|
- `DashboardView.java`: chart + threshold markers + level display
|
|
- `PixelStreamingView.java`: JCEF browser panel for stream
|
|
- `ProblemLevelBar.java`: custom level visualization widget
|
|
|
|
### `vassistent.util`
|
|
|
|
- `ConfigLoader.java`: classpath properties loader
|
|
- `Logger.java`: async logger with file rotation
|
|
|
|
## Test Sources
|
|
|
|
### `vassistent.model`
|
|
|
|
- `AppStateTest.java`
|
|
|
|
### `vassistent.service`
|
|
|
|
- `AnimationFileServiceTest.java`
|
|
- `BinaryEventServiceTest.java`
|
|
- `DataPersistenceServiceTest.java`
|
|
- `EvaluationServiceTest.java`
|
|
- `MqttClientServiceTest.java`
|
|
- `ProcessManagerServiceTest.java`
|
|
- `StatisticsServiceTest.java`
|