コード例 #1
0
def test_mirr_missing_values():
    response = handlers.mirr_handler(
        {
            "finance_rate": 0.12,
            "reinvest_rate": 0.10
        }, None)

    assert 'error' in response
    assert response.get('error') == REQUIRED_PROPERTY_ERR.format("values")
コード例 #2
0
def test_mirr_values_too_few():
    response = handlers.mirr_handler(
        {
            "values": [100],
            "reinvest_rate": 0.10,
            "finance_rate": 0.12
        }, None)

    assert 'error' in response
    assert "is too short" in response.get('error')
コード例 #3
0
def test_mirr_missing_reinvest_rate():
    response = handlers.mirr_handler(
        {
            "values": [-1000, 300, 400, 400, 300],
            "finance_rate": 0.12,
        }, None)

    assert 'error' in response
    assert response.get('error') == REQUIRED_PROPERTY_ERR.format(
        "reinvest_rate")
コード例 #4
0
def test_mirr_handler():
    # TODO test data types & empty values array
    response = handlers.mirr_handler(
        {
            "values": [-1000, 300, 400, 400, 300],
            "finance_rate": 0.12,
            "reinvest_rate": 0.10
        }, None)
    assert 'result' in response
    assert round(response.get('result'), 5) == 0.12876
コード例 #5
0
def test_mirr_values_missing_neg():
    response = handlers.mirr_handler(
        {
            "values": [100, 200],
            "reinvest_rate": 0.10,
            "finance_rate": 0.12
        }, None)

    assert 'error' in response
    assert response.get(
        'error'
    ) == "MIRR requires at least one positive and one negative value"