✅ Select contract demon none when no cards
| Category | Ability |
| Status | Passing |
| Test | tests/test_turn_sequence.py::test_select_contract_demon_none_when_no_cards |
Player with no cards contracts None (deck_exhaustion rule).
Preconditions
- P1 hand = [].
Action
- select_contract_demon(state, Side.PLAYER_1, None)
result = select_contract_demon(state, Side.PLAYER_1, None)
Expected Postconditions
-
contracted_demons[P1] = None.
-
P1 hand = [] (unchanged).
Assertions
assert result.contracted_demons[Side.PLAYER_1] is None
assert result.players[Side.PLAYER_1].hand == []