- Replace Sinatra run! calls with direct Puma::Server usage
- Use Rack-compatible approach to avoid Sinatra::Wrapper issues
- Remove problematic set method calls and run! method calls
- Both integrated and standalone health servers now use same Puma/Rack approach
- Remove outdated baktainer/logger require from main file
This should resolve the undefined method errors with Sinatra::Wrapper.
- Replace hardcoded timestamps with regex patterns in integration tests
- Use dynamic file discovery instead of exact filenames in unit tests
- Change timestamp pattern from specific values to \d{10} regex for 10-digit unix timestamps
- Update backup file assertions to use Dir.glob and pattern matching
- Ensure tests are robust across different execution environments and times
This resolves intermittent test failures caused by timestamp variations
between test runs and different execution contexts.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement complete test suite with 63 examples (49 unit + 14 integration tests)
- Add RSpec, FactoryBot, WebMock, and SimpleCov testing dependencies
- Create mocked integration tests eliminating need for real Docker containers
- Fix SQLite method signature to accept login/password parameters
- Enhance container discovery to handle nil labels gracefully
- Add test coverage reporting and JUnit XML output for CI
- Update GitHub Actions workflow to run tests before Docker builds
- Add Ruby 3.3 setup with gem caching for faster CI execution
- Create CI test script and comprehensive testing documentation
- Ensure Docker builds only proceed when all tests pass
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>