refactor: add equipment registry
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
from core.basic.equipment import get_equipment
|
||||
from core.basic.equipment_registry import EquipmentRegistry
|
||||
|
||||
|
||||
def test_get_equipment_returns_cached_default_version():
|
||||
first = get_equipment('0')
|
||||
second = get_equipment('0')
|
||||
|
||||
assert first is second
|
||||
assert first.version == '0'
|
||||
|
||||
|
||||
def test_get_equipment_falls_back_to_default_version():
|
||||
equipment = get_equipment('missing-version')
|
||||
|
||||
assert equipment.version == '0'
|
||||
|
||||
|
||||
def test_equipment_registry_caches_by_version():
|
||||
calls = []
|
||||
|
||||
class Equipment:
|
||||
def __init__(self, version):
|
||||
calls.append(version)
|
||||
self.version = version
|
||||
|
||||
registry = EquipmentRegistry(Equipment)
|
||||
|
||||
assert registry.get('0') is registry.get('0')
|
||||
assert calls == ['0']
|
||||
Reference in New Issue
Block a user