feat: release 1.4.0 with isolated upgrades and device discovery
This commit is contained in:
1 parent
a6a3ee2eb0
commit
df66897ff4
41 files changed
+1564
-126
No files matched your search
@@ -310,6 +310,67 @@ async def test_remote_endpoint_blocks_local_wireless_connection(monkeypatch):
|
||||
assert "Switch to local ADB" in result["message"]
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_restart_reconnects_tcp_devices_after_server_started(monkeypatch):
|
||||
from artemis.runtime.adb_discovery import adb_device_discovery
|
||||
|
||||
monkeypatch.setattr(
|
||||
adb_server_connection, "current_endpoint", lambda: AdbServerEndpoint("127.0.0.1", 5037)
|
||||
)
|
||||
monkeypatch.setattr(
|
||||
"artemis.core.diagnostics.adb_keys.inspect_adb_keys",
|
||||
lambda: type("Keys", (), {"is_corrupted": False})(),
|
||||
)
|
||||
events = []
|
||||
|
||||
def run(args, **kwargs):
|
||||
events.append(args[-1])
|
||||
return subprocess.CompletedProcess(args, 0, "", "")
|
||||
|
||||
def reconnect(*args, **kwargs):
|
||||
events.append("reconnect")
|
||||
assert kwargs["force"] is True
|
||||
return [{"target": "127.0.0.1:16384", "success": True}]
|
||||
|
||||
monkeypatch.setattr(subprocess, "run", run)
|
||||
monkeypatch.setattr(adb_device_discovery, "refresh", reconnect)
|
||||
result = await ReadinessEngine().restart_adb_server()
|
||||
assert events == ["kill-server", "start-server", "reconnect"]
|
||||
assert result["automatic_connections"][0]["success"] is True
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_manual_tcp_connection_remembers_success_only(monkeypatch):
|
||||
from unittest.mock import Mock
|
||||
from artemis.runtime.adb_discovery import adb_device_discovery
|
||||
|
||||
monkeypatch.setattr(
|
||||
adb_server_connection, "current_endpoint", lambda: AdbServerEndpoint("127.0.0.1", 5037)
|
||||
)
|
||||
remember = Mock(return_value=True)
|
||||
monkeypatch.setattr(adb_device_discovery, "remember", remember)
|
||||
monkeypatch.setattr(
|
||||
subprocess,
|
||||
"run",
|
||||
lambda args, **kwargs: subprocess.CompletedProcess(
|
||||
args, 0, "connected to 192.0.2.10:5555", ""
|
||||
),
|
||||
)
|
||||
result = await ReadinessEngine().connect_wireless_adb("192.0.2.10", 5555)
|
||||
assert result["remembered"] is True
|
||||
remember.assert_called_once_with("192.0.2.10:5555")
|
||||
remember.reset_mock()
|
||||
monkeypatch.setattr(
|
||||
subprocess,
|
||||
"run",
|
||||
lambda args, **kwargs: subprocess.CompletedProcess(args, 1, "", "connection refused"),
|
||||
)
|
||||
result = await ReadinessEngine().connect_wireless_adb("192.0.2.11", 5555)
|
||||
assert result["success"] is False
|
||||
assert result["remembered"] is False
|
||||
remember.assert_not_called()
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_remote_endpoint_blocks_local_emulator_launch(monkeypatch):
|
||||
monkeypatch.setattr(
|
||||
|
||||
Reference in new issue
Block a user