from app.services.crm_supplier_hazard import product_allowed def test_plain_always_allowed(): assert product_allowed(is_toxic=0, is_explosive=0, allow_toxic=0, allow_explosive=0) is True def test_toxic_only_requires_allow_toxic(): assert product_allowed(1, 0, allow_toxic=1, allow_explosive=0) is True assert product_allowed(1, 0, allow_toxic=0, allow_explosive=1) is False def test_explosive_only_requires_allow_explosive(): assert product_allowed(0, 1, allow_toxic=0, allow_explosive=1) is True assert product_allowed(0, 1, allow_toxic=1, allow_explosive=0) is False def test_dual_requires_both(): assert product_allowed(1, 1, allow_toxic=1, allow_explosive=1) is True assert product_allowed(1, 1, allow_toxic=1, allow_explosive=0) is False assert product_allowed(1, 1, allow_toxic=0, allow_explosive=1) is False