Files
ArchiveBox/archivebox/tests/test_cli_manage.py
Nick Sweeting b749b26c5d wip
2026-03-23 03:58:32 -07:00

71 lines
1.6 KiB
Python

#!/usr/bin/env python3
"""
Tests for archivebox manage command.
Verify manage command runs Django management commands.
"""
import os
import subprocess
def test_manage_help_works(tmp_path, process):
"""Test that manage help command works."""
os.chdir(tmp_path)
result = subprocess.run(
["archivebox", "manage", "help"],
capture_output=True,
text=True,
timeout=30,
)
assert result.returncode == 0
assert len(result.stdout) > 100
def test_manage_showmigrations_works(tmp_path, process):
"""Test that manage showmigrations works."""
os.chdir(tmp_path)
result = subprocess.run(
["archivebox", "manage", "showmigrations"],
capture_output=True,
text=True,
timeout=30,
)
assert result.returncode == 0
# Should show migration status
assert "core" in result.stdout or "[" in result.stdout
def test_manage_dbshell_command_exists(tmp_path, process):
"""Test that manage dbshell command is recognized."""
os.chdir(tmp_path)
result = subprocess.run(
["archivebox", "manage", "help", "dbshell"],
capture_output=True,
text=True,
timeout=30,
)
# Should show help for dbshell
assert result.returncode == 0
assert "dbshell" in result.stdout or "database" in result.stdout.lower()
def test_manage_check_works(tmp_path, process):
"""Test that manage check works."""
os.chdir(tmp_path)
result = subprocess.run(
["archivebox", "manage", "check"],
capture_output=True,
text=True,
timeout=30,
)
# Check should complete
assert result.returncode in [0, 1]