From 8e8f2616595eb7b4c682f2ef68aef30d64d8acfc Mon Sep 17 00:00:00 2001
From: David Hoese <david.hoese@ssec.wisc.edu>
Date: Thu, 27 Jul 2023 14:35:03 -0500
Subject: [PATCH] Fix CSV status string

---
 metobsapi/data_api.py            | 7 +++++--
 metobsapi/tests/test_data_api.py | 8 ++++++++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/metobsapi/data_api.py b/metobsapi/data_api.py
index 512e2a4..348e798 100644
--- a/metobsapi/data_api.py
+++ b/metobsapi/data_api.py
@@ -196,7 +196,7 @@ def handle_csv(frame, epoch, response_info, formatting_kwargs):
 
     output = output.format(
         sep=sep,
-        status=response_info.get("status_info", "success"),
+        status=response_info.get("status", "success"),
         code=code,
         message=response_info.get("message", ""),
         num_results=frame.shape[0] if frame is not None else 0,
@@ -432,7 +432,10 @@ def _query_time_series_db(time_parameters, influx_symbols):
         try:
             result = query(influx_symbols, *time_parameters)
         except ReadTimeoutError:
-            message = "Request took too long to process. It may be too much data. Try a shorter time range."
+            message = (
+                "Request took too long to process. It may be too much data. "
+                "Try a shorter time range or use files API."
+            )
             code = 413
             status = "fail"
             result = None
diff --git a/metobsapi/tests/test_data_api.py b/metobsapi/tests/test_data_api.py
index 8159342..e891f87 100644
--- a/metobsapi/tests/test_data_api.py
+++ b/metobsapi/tests/test_data_api.py
@@ -298,6 +298,14 @@ def test_too_many_points(client):
     assert res["status"] == "fail"
 
 
+def test_too_many_points_csv(client):
+    res = client.get("/api/data.csv?symbols=aoss.tower.air_temp&begin=1970-01-01T00:00:00")
+    assert res.status_code == 413
+    csv_data = res.data.decode()
+    assert "status: fail" in csv_data
+    assert "num_results: 0" in csv_data
+
+
 @pytest.mark.parametrize(
     ("begin", "end", "exp_query_time"),
     [
-- 
GitLab