def test_calculate_income_score_no_income_should_be_ineligible():
    profile = {
        "age": 35,
        "dependents": 1,
        "house": {
            "ownership_status": "wrong"
        },
        "income": 0,
        "marital_status": "married",
        "risk_questions": [0, 1, 0],
        "vehicle": {
            "year": 2018
        }
    }

    rp_service = RiskProfileService(profile)
    score = rp_service.calculate_income_score()

    assert score == {"auto": 0, "disability": 0, "home": 0, "life": 0}
    assert rp_service.risk_profile == {
        "auto": "economic",
        "disability": "ineligible",
        "home": "economic",
        "life": "economic"
    }
def test_calculate_income_score_high_should_deduct_one_from_everything():
    profile = {
        "age": 35,
        "dependents": 1,
        "house": {
            "ownership_status": "wrong"
        },
        "income": 201000,
        "marital_status": "married",
        "risk_questions": [0, 1, 0],
        "vehicle": {
            "year": 2018
        }
    }

    rp_service = RiskProfileService(profile)
    score = rp_service.calculate_income_score()

    assert score == {"auto": -1, "disability": -1, "home": -1, "life": -1}
    assert rp_service.risk_profile == {
        "auto": "economic",
        "disability": "economic",
        "home": "economic",
        "life": "economic"
    }