MCPcopy Create free account
hub / github.com/IBM/mcp-cli / _make_vm

Function _make_vm

tests/commands/memory/test_memory_command.py:56–151  ·  view source on GitHub ↗

Build a mock VM object with all required sub-objects.

()

Source from the content-addressed store, hash-verified

54
55
56def _make_vm() -> MagicMock:
57 """Build a mock VM object with all required sub-objects."""
58 from chuk_ai_session_manager.memory.models import StorageTier
59 from chuk_ai_session_manager.memory.models.enums import (
60 CompressionLevel,
61 Modality,
62 PageType,
63 VMMode,
64 )
65
66 vm = MagicMock()
67 vm.mode = VMMode.PASSIVE
68 vm.turn = 5
69
70 # metrics
71 metrics = MagicMock()
72 metrics.tlb_hits = 10
73 metrics.tlb_misses = 2
74 metrics.tlb_hit_rate = 10 / 12
75 metrics.faults_total = 3
76 metrics.faults_this_turn = 1
77 metrics.evictions_total = 2
78 metrics.evictions_this_turn = 0
79 vm.metrics = metrics
80
81 # working_set
82 ws_stats = MagicMock()
83 ws_stats.utilization = 0.5
84 ws_stats.l0_pages = 2
85 ws_stats.l1_pages = 4
86 ws_stats.tokens_used = 8_000
87 ws_stats.tokens_available = 8_000
88 ws = MagicMock()
89 ws.get_stats.return_value = ws_stats
90 vm.working_set = ws
91
92 # page_table
93 pt_stats = MagicMock()
94 # pages_by_tier: a real dict keyed by StorageTier enums
95 pt_stats.pages_by_tier = {
96 StorageTier.L0: 2,
97 StorageTier.L1: 4,
98 }
99 pt_stats.total_pages = 6
100 pt_stats.dirty_pages = 1
101
102 # a couple of page table entries
103 def _make_entry(pid: str, tier: StorageTier) -> MagicMock:
104 e = MagicMock()
105 e.page_id = pid
106 e.page_type = PageType.TRANSCRIPT
107 e.tier = tier
108 e.size_tokens = 100
109 e.eviction_priority = 0.5
110 e.pinned = False
111 e.compression_level = CompressionLevel.FULL
112 e.access_count = 3
113 e.last_accessed = datetime.now(timezone.utc)

Callers 1

_make_chat_contextFunction · 0.85

Calls 1

_make_entryFunction · 0.70

Tested by

no test coverage detected