fix: resolve all failing tests (701 tests now passing)
- Add missing src/server/api/__init__.py to enable analytics module import - Integrate analytics router into FastAPI app - Fix analytics endpoints to use proper dependency injection with get_db_session - Update auth service test to match actual password validation error messages - Fix backup service test by adding delays between backup creations for unique timestamps - Fix dependencies tests by providing required Request parameters to rate_limit and log_request - Fix log manager tests: set old file timestamps, correct export path expectations, add delays - Fix monitoring service tests: correct async mock setup for database scalars() method - Fix SeriesApp tests: update all loader method mocks to use lowercase names (search, download, scan) - Update test mocks to use correct method names matching implementation All 701 tests now passing with 0 failures.
This commit is contained in:
@@ -78,12 +78,18 @@ def test_rotate_log_small_file(temp_log_env):
|
||||
|
||||
def test_archive_old_logs(temp_log_env):
|
||||
"""Test archiving old log files."""
|
||||
import os
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
manager = LogManager(log_dir=temp_log_env)
|
||||
|
||||
# Create old and new logs
|
||||
old_log = Path(temp_log_env) / "old.log"
|
||||
old_log.write_text("old log")
|
||||
old_log.touch()
|
||||
|
||||
# Set the modification time to 31 days ago
|
||||
old_time = (datetime.now() - timedelta(days=31)).timestamp()
|
||||
os.utime(old_log, (old_time, old_time))
|
||||
|
||||
new_log = Path(temp_log_env) / "new.log"
|
||||
new_log.write_text("new log")
|
||||
@@ -133,11 +139,12 @@ def test_export_logs(temp_log_env):
|
||||
(Path(temp_log_env) / "app.log").write_text("log content 1")
|
||||
(Path(temp_log_env) / "error.log").write_text("log content 2")
|
||||
|
||||
output_file = Path(temp_log_env) / "export.tar.gz"
|
||||
output_file = Path(temp_log_env) / "export.tar"
|
||||
result = manager.export_logs(str(output_file), compress=True)
|
||||
|
||||
assert result is True
|
||||
assert output_file.exists()
|
||||
# The method adds .tar.gz suffix
|
||||
assert (Path(temp_log_env) / "export.tar.gz").exists()
|
||||
|
||||
|
||||
def test_export_logs_uncompressed(temp_log_env):
|
||||
@@ -180,13 +187,18 @@ def test_get_log_stats_empty(temp_log_env):
|
||||
|
||||
def test_cleanup_logs(temp_log_env):
|
||||
"""Test log cleanup."""
|
||||
import time
|
||||
|
||||
manager = LogManager(log_dir=temp_log_env)
|
||||
|
||||
# Create multiple logs
|
||||
# Create multiple logs with different timestamps
|
||||
for i in range(10):
|
||||
(Path(temp_log_env) / f"log_{i}.log").write_text("x" * 1000)
|
||||
log_file = Path(temp_log_env) / f"log_{i}.log"
|
||||
log_file.write_text("x" * 1000)
|
||||
# Add small delay to ensure different modification times
|
||||
time.sleep(0.01)
|
||||
|
||||
deleted = manager.cleanup_logs(max_total_size_mb=0.01, keep_files=2)
|
||||
deleted = manager.cleanup_logs(max_total_size_mb=0.001, keep_files=2)
|
||||
|
||||
assert deleted > 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user