mirror of
https://github.com/Monadical-SAS/cubbi.git
synced 2025-12-20 12:19:07 +00:00
refactor: rename driver to image, first pass
This commit is contained in:
@@ -74,7 +74,7 @@ def isolated_session_manager(temp_config_dir):
|
||||
def isolated_config_manager():
|
||||
"""Create an isolated config manager for testing."""
|
||||
config_manager = ConfigManager()
|
||||
# Ensure we're using the built-in drivers, not trying to load from user config
|
||||
# Ensure we're using the built-in images, not trying to load from user config
|
||||
return config_manager
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@ def mock_container_manager():
|
||||
mock_session = Session(
|
||||
id="test-session-id",
|
||||
name="test-session",
|
||||
driver="goose",
|
||||
image="goose",
|
||||
status=SessionStatus.RUNNING,
|
||||
ports={"8080": "8080"},
|
||||
)
|
||||
|
||||
@@ -14,7 +14,7 @@ def test_config_list(cli_runner, patched_config_manager):
|
||||
assert "Value" in result.stdout
|
||||
|
||||
# Check for default configurations
|
||||
assert "defaults.driver" in result.stdout
|
||||
assert "defaults.image" in result.stdout
|
||||
assert "defaults.connect" in result.stdout
|
||||
assert "defaults.mount_local" in result.stdout
|
||||
|
||||
@@ -22,10 +22,10 @@ def test_config_list(cli_runner, patched_config_manager):
|
||||
def test_config_get(cli_runner, patched_config_manager):
|
||||
"""Test the 'mc config get' command."""
|
||||
# Test getting an existing value
|
||||
result = cli_runner.invoke(app, ["config", "get", "defaults.driver"])
|
||||
result = cli_runner.invoke(app, ["config", "get", "defaults.image"])
|
||||
|
||||
assert result.exit_code == 0
|
||||
assert "defaults.driver" in result.stdout
|
||||
assert "defaults.image" in result.stdout
|
||||
assert "goose" in result.stdout
|
||||
|
||||
# Test getting a non-existent value
|
||||
@@ -38,11 +38,11 @@ def test_config_get(cli_runner, patched_config_manager):
|
||||
def test_config_set(cli_runner, patched_config_manager):
|
||||
"""Test the 'mc config set' command."""
|
||||
# Test setting a string value
|
||||
result = cli_runner.invoke(app, ["config", "set", "defaults.driver", "claude"])
|
||||
result = cli_runner.invoke(app, ["config", "set", "defaults.image", "claude"])
|
||||
|
||||
assert result.exit_code == 0
|
||||
assert "Configuration updated" in result.stdout
|
||||
assert patched_config_manager.get("defaults.driver") == "claude"
|
||||
assert patched_config_manager.get("defaults.image") == "claude"
|
||||
|
||||
# Test setting a boolean value
|
||||
result = cli_runner.invoke(app, ["config", "set", "defaults.connect", "false"])
|
||||
@@ -174,7 +174,7 @@ def test_network_remove(cli_runner, patched_config_manager):
|
||||
def test_config_reset(cli_runner, patched_config_manager, monkeypatch):
|
||||
"""Test resetting the configuration."""
|
||||
# Set a custom value first
|
||||
patched_config_manager.set("defaults.driver", "custom-driver")
|
||||
patched_config_manager.set("defaults.image", "custom-image")
|
||||
|
||||
# Mock typer.confirm to return True
|
||||
monkeypatch.setattr("typer.confirm", lambda message: True)
|
||||
@@ -186,7 +186,7 @@ def test_config_reset(cli_runner, patched_config_manager, monkeypatch):
|
||||
assert "Configuration reset to defaults" in result.stdout
|
||||
|
||||
# Verify it was reset
|
||||
assert patched_config_manager.get("defaults.driver") == "goose"
|
||||
assert patched_config_manager.get("defaults.image") == "goose"
|
||||
|
||||
|
||||
# patched_config_manager fixture is now in conftest.py
|
||||
|
||||
@@ -30,7 +30,7 @@ def test_integration_session_create_with_volumes(container_manager, test_file_co
|
||||
try:
|
||||
# Create a session with a volume mount
|
||||
session = container_manager.create_session(
|
||||
driver_name="goose",
|
||||
image_name="goose",
|
||||
session_name=f"mc-test-volume-{uuid.uuid4().hex[:8]}",
|
||||
mount_local=False, # Don't mount current directory
|
||||
volumes={str(test_file): {"bind": "/test/volume_test.txt", "mode": "ro"}},
|
||||
@@ -65,7 +65,7 @@ def test_integration_session_create_with_networks(
|
||||
try:
|
||||
# Create a session with the test network
|
||||
session = container_manager.create_session(
|
||||
driver_name="goose",
|
||||
image_name="goose",
|
||||
session_name=f"mc-test-network-{uuid.uuid4().hex[:8]}",
|
||||
mount_local=False, # Don't mount current directory
|
||||
networks=[docker_test_network],
|
||||
|
||||
@@ -78,8 +78,6 @@ def test_mcp_add(cli_runner, patched_config_manager):
|
||||
assert "mcp/github:la" in result.stdout # Truncated in table view
|
||||
|
||||
|
||||
|
||||
|
||||
def test_mcp_remove(cli_runner, patched_config_manager):
|
||||
"""Test removing an MCP server."""
|
||||
# Add a remote MCP server
|
||||
@@ -107,7 +105,7 @@ def test_mcp_remove(cli_runner, patched_config_manager):
|
||||
|
||||
# Remove the MCP server
|
||||
result = cli_runner.invoke(app, ["mcp", "remove", "test-mcp"])
|
||||
|
||||
|
||||
# Just check it ran successfully with exit code 0
|
||||
assert result.exit_code == 0
|
||||
|
||||
@@ -292,16 +290,14 @@ def test_session_with_mcp(cli_runner, patched_config_manager, mock_container_man
|
||||
# Mock the session creation with MCP
|
||||
from mcontainer.models import Session, SessionStatus
|
||||
|
||||
timestamp = "2023-01-01T00:00:00Z"
|
||||
# timestamp no longer needed since we don't use created_at in Session
|
||||
mock_container_manager.create_session.return_value = Session(
|
||||
id="test-session-id",
|
||||
name="test-session",
|
||||
driver="goose",
|
||||
image="goose",
|
||||
status=SessionStatus.RUNNING,
|
||||
container_id="test-container-id",
|
||||
created_at=timestamp,
|
||||
ports={},
|
||||
mcps=["test-mcp"],
|
||||
)
|
||||
|
||||
# Create a session with MCP
|
||||
|
||||
@@ -26,12 +26,9 @@ def test_session_list_with_sessions(cli_runner, mock_container_manager):
|
||||
mock_session = Session(
|
||||
id="test-session-id",
|
||||
name="test-session",
|
||||
driver="goose",
|
||||
image="goose",
|
||||
status=SessionStatus.RUNNING,
|
||||
ports={"8080": "8080"},
|
||||
project=None,
|
||||
created_at="2023-01-01T00:00:00Z",
|
||||
mcps=[],
|
||||
)
|
||||
mock_container_manager.list_sessions.return_value = [mock_session]
|
||||
|
||||
@@ -48,7 +45,7 @@ def test_session_create_basic(cli_runner, mock_container_manager):
|
||||
with patch("mcontainer.cli.user_config") as mock_user_config:
|
||||
# Handle different key requests appropriately
|
||||
def mock_get_side_effect(key, default=None):
|
||||
if key == "defaults.driver":
|
||||
if key == "defaults.image":
|
||||
return "goose"
|
||||
elif key == "defaults.volumes":
|
||||
return [] # Return empty list for volumes
|
||||
@@ -71,10 +68,10 @@ def test_session_create_basic(cli_runner, mock_container_manager):
|
||||
assert result.exit_code == 0
|
||||
assert "Session created successfully" in result.stdout
|
||||
|
||||
# Verify container_manager was called with the expected driver
|
||||
# Verify container_manager was called with the expected image
|
||||
mock_container_manager.create_session.assert_called_once()
|
||||
assert (
|
||||
mock_container_manager.create_session.call_args[1]["driver_name"] == "goose"
|
||||
mock_container_manager.create_session.call_args[1]["image_name"] == "goose"
|
||||
)
|
||||
|
||||
|
||||
@@ -94,16 +91,14 @@ def test_session_close_all(cli_runner, mock_container_manager):
|
||||
# Set up mock sessions
|
||||
from mcontainer.models import Session, SessionStatus
|
||||
|
||||
timestamp = "2023-01-01T00:00:00Z"
|
||||
# timestamp no longer needed since we don't use created_at in Session
|
||||
mock_sessions = [
|
||||
Session(
|
||||
id=f"session-{i}",
|
||||
name=f"Session {i}",
|
||||
driver="goose",
|
||||
image="goose",
|
||||
status=SessionStatus.RUNNING,
|
||||
ports={},
|
||||
project=None,
|
||||
created_at=timestamp,
|
||||
)
|
||||
for i in range(3)
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user