def METHOD_NAME(self):
    max_csm = 8
    with pytest.raises(ValueError, match="Option 'nn' not allowed for function 'power2_inverse_decreasing' in "):
        CSMInfiniteRatioFunction(
            function="power2_inverse_decreasing",
            options_dict={"max_csm": max_csm, "nn": 2},
        )
    with pytest.raises(
        ValueError, match="function='power2_tangent_decreasing' is not allowed in RatioFunction of type "
    ):
        CSMInfiniteRatioFunction(
            function="power2_tangent_decreasing",
            options_dict={"max_csm": max_csm},
        )
    csm_infinite_ratio = CSMInfiniteRatioFunction(
        function="power2_inverse_decreasing", options_dict={"max_csm": max_csm}
    )
    # csm_infinite_ratio = CSMInfiniteRatioFunction(function='power2_inverse_decreasing')
    assert csm_infinite_ratio.evaluate(0) == np.inf
    assert csm_infinite_ratio.evaluate(2) == approx(2.25)
    assert csm_infinite_ratio.evaluate(4) == 0.5
    assert csm_infinite_ratio.evaluate(8) == 0
    assert csm_infinite_ratio.evaluate(9) == 0
    csm_infinite_ratio = CSMInfiniteRatioFunction(
        function="power2_inverse_power2_decreasing",
        options_dict={"max_csm": max_csm},
    )
    assert csm_infinite_ratio.evaluate(0) == np.inf
    assert csm_infinite_ratio.evaluate(2) == 9
    assert csm_infinite_ratio.evaluate(4) == 1
    assert csm_infinite_ratio.evaluate(8) == 0
    assert csm_infinite_ratio.evaluate(9) == 0
    max_csm = 12
    csm_infinite_ratio = CSMInfiniteRatioFunction(
        function="power2_inverse_power2_decreasing",
        options_dict={"max_csm": max_csm},
    )
    assert csm_infinite_ratio.evaluate(0) == np.inf
    assert csm_infinite_ratio.evaluate(3) == 9
    assert csm_infinite_ratio.evaluate(6) == 1
    assert csm_infinite_ratio.evaluate(12) == 0
    assert csm_infinite_ratio.evaluate(20) == 0