39 lines
1.3 KiB
Markdown
39 lines
1.3 KiB
Markdown
# Test Report
|
|
|
|
## Environment
|
|
- **Date**: 2026-05-14
|
|
- **Go Version**: go 1.25.0
|
|
- **OS**: darwin/amd64
|
|
|
|
## Summary
|
|
| Test Case | Status | Duration |
|
|
|-----------|--------|----------|
|
|
| TestTaskBasic | PASS | 2.50s |
|
|
| TestTaskLifecycle | PASS | 4.00s |
|
|
| TestTaskPolicySkip | PASS | 3.50s |
|
|
| TestTaskTimeout | PASS | 2.50s |
|
|
| TestTaskPanicRecover | PASS | 2.50s |
|
|
| TestTaskManualRun | PASS | 0.20s |
|
|
| TestGracefulStop | PASS | 2.04s |
|
|
|
|
## Benchmarks
|
|
| Benchmark | Iterations | ns/op | B/op | allocs/op |
|
|
|-----------|------------|-------|------|-----------|
|
|
| BenchmarkTaskRegistration | 3966831 | 308.0 | 272 | 5 |
|
|
| BenchmarkTaskExecutionOverhead/Get | 52783425 | 22.35 | 0 | 0 |
|
|
| BenchmarkTaskExecutionOverhead/List | 10555030 | 113.3 | 32 | 2 |
|
|
|
|
## Details
|
|
|
|
### TestGracefulStop
|
|
Successfully verified that the scheduler waits for running tasks to complete during `Stop(ctx)` using manual triggers for higher reliability.
|
|
|
|
### TestTaskPanicRecover
|
|
Verified that the scheduler remains operational and continues to schedule tasks even if a specific task panics, with full stack trace logging.
|
|
|
|
### TestTaskTimeout
|
|
Verified that the task-specific `context.Context` is correctly cancelled when the configured timeout is exceeded.
|
|
|
|
## Conclusion
|
|
All 7 test cases passed. The implementation of the `Service` interface is robust and optimized for performance.
|