Complete S3 integration test modernization

- Implement TestMain-based auto server management for all 13 S3 test suites
- Fix import paths to use full module names instead of relative imports
- Update Makefiles to use correct build targets and binary detection
- Enhance testutil with improved binary discovery and credential handling
- Fix test session creation to use explicit AWS credentials
- Validate infrastructure with successful test execution
- Update documentation with implementation details and usage instructions

All S3 test suites now support:
- make test-with-server: Auto-managed server lifecycle
- make test-external: Use existing server (for CI/CD)
- Consistent build and dependency checking
- Proper error handling and logging
This commit is contained in:
Chris Lu committed 2025-12-24 19:42:30 -08:00
1 parent d762f8d58e
commit ef1d703054
20 files changed
+117 -91

No files matched your search

+3 -3
View File
@@ -6,12 +6,12 @@
# Build SeaweedFS binary if not exists
build:
@echo "Building SeaweedFS binary..."
@cd ../../../ && make build
@test -f ../../../weed || (echo "SeaweedFS binary not found" && exit 1)
@cd ../../../ && make install
@which weed > /dev/null 2>&1 || (echo "SeaweedFS binary not found in PATH" && exit 1)
# Check dependencies
check-deps: build
@test -f ../../../weed || (echo "SeaweedFS binary not found" && exit 1)
@which weed > /dev/null 2>&1 || (echo "SeaweedFS binary not found in PATH" && exit 1)
@echo "✅ Dependencies available"
# Run all tests (auto-manages weed mini server via TestMain)