24 lines
705 B
Python
24 lines
705 B
Python
"""Unit tests for Sheet 1: Central Bank (Part II — 2.1)."""
|
|
|
|
import pytest
|
|
from fqbm.state import FQBMState
|
|
from fqbm.sheets.central_bank import central_bank_step, CentralBankParams
|
|
|
|
|
|
def test_central_bank_identity_qe():
|
|
"""QE: dB > 0 → dR > 0."""
|
|
state = FQBMState(B=100, R=50, C=20, E_cb=30)
|
|
params = CentralBankParams(d_B=10, d_L_cb=0)
|
|
out = central_bank_step(state, params)
|
|
assert out.B == 110
|
|
assert out.R == 60
|
|
|
|
|
|
def test_central_bank_identity_qt():
|
|
"""QT: dB < 0 → dR < 0."""
|
|
state = FQBMState(B=100, R=50, C=20, E_cb=30)
|
|
params = CentralBankParams(d_B=-5, d_L_cb=0)
|
|
out = central_bank_step(state, params)
|
|
assert out.B == 95
|
|
assert out.R == 45
|