from tools.check_pine import check_plot_calls, check_security_calls


def test_exact_plot_budget_is_allowed_but_warns():
    result = check_plot_calls(['plot(close)\n'] * 61)
    assert result[2:] == (64, True, False)
    assert check_plot_calls(['plot(close)\n'] * 62)[-1] is True


def test_exact_request_budget_is_allowed_but_warns():
    result = check_security_calls(['request.security("BTC", "D", close)\n'] * 16)
    assert result[2:] == (40, True, False)
    assert check_security_calls(['request.security("BTC", "D", close)\n'] * 17)[-1] is True
