From 0105e852ae57d2f120e2d3a923e33da31edd21c6 Mon Sep 17 00:00:00 2001 From: colin99d Date: Wed, 16 Nov 2022 08:41:01 +0100 Subject: [PATCH 1/3] Covid error handling and US country fix --- openbb_terminal/alternative/covid/covid_controller.py | 2 ++ openbb_terminal/alternative/covid/covid_model.py | 6 ++++++ openbb_terminal/alternative/covid/covid_view.py | 2 ++ 3 files changed, 10 insertions(+) diff --git a/openbb_terminal/alternative/covid/covid_controller.py b/openbb_terminal/alternative/covid/covid_controller.py index 39232970da5a..2feb268aba1f 100644 --- a/openbb_terminal/alternative/covid/covid_controller.py +++ b/openbb_terminal/alternative/covid/covid_controller.py @@ -127,6 +127,8 @@ def call_country(self, other_args: List[str]): ) return country = ns_parser.country.title().replace("_", " ") + if country == "Us": + country = "US" self.country = country console.print(f"[cyan]{country}[/cyan] loaded\n") else: diff --git a/openbb_terminal/alternative/covid/covid_model.py b/openbb_terminal/alternative/covid/covid_model.py index 28c9066b635f..0cc72ef07019 100644 --- a/openbb_terminal/alternative/covid/covid_model.py +++ b/openbb_terminal/alternative/covid/covid_model.py @@ -60,6 +60,9 @@ def get_global_cases(country: str) -> pd.DataFrame: .T ) cases.index = pd.to_datetime(cases.index) + if country not in cases: + console.print("[red]The selection `{country}` is not a valid option.[/red]\n") + return pd.DataFrame() cases = pd.DataFrame(cases[country]).diff().dropna() if cases.shape[1] > 1: return pd.DataFrame(cases.sum(axis=1)) @@ -89,6 +92,9 @@ def get_global_deaths(country: str) -> pd.DataFrame: .T ) deaths.index = pd.to_datetime(deaths.index) + if country not in deaths: + console.print("[red]The selection `{country}` is not a valid option.[/red]\n") + return pd.DataFrame() deaths = pd.DataFrame(deaths[country]).diff().dropna() if deaths.shape[1] > 1: return pd.DataFrame(deaths.sum(axis=1)) diff --git a/openbb_terminal/alternative/covid/covid_view.py b/openbb_terminal/alternative/covid/covid_view.py index d33c213d435f..19c2ccae3eb3 100644 --- a/openbb_terminal/alternative/covid/covid_view.py +++ b/openbb_terminal/alternative/covid/covid_view.py @@ -40,6 +40,8 @@ def plot_covid_ov( """ cases = covid_model.get_global_cases(country) / 1_000 deaths = covid_model.get_global_deaths(country) + if cases.empty or deaths.empty: + return ov = pd.concat([cases, deaths], axis=1) ov.columns = ["Cases", "Deaths"] From 538b6d7e16dffa2775878ae5375af67848ed2e9a Mon Sep 17 00:00:00 2001 From: colin99d Date: Wed, 16 Nov 2022 09:45:05 +0100 Subject: [PATCH 2/3] Added fix --- openbb_terminal/alternative/covid/covid_model.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openbb_terminal/alternative/covid/covid_model.py b/openbb_terminal/alternative/covid/covid_model.py index 0cc72ef07019..acd3e1b7ba35 100644 --- a/openbb_terminal/alternative/covid/covid_model.py +++ b/openbb_terminal/alternative/covid/covid_model.py @@ -122,6 +122,8 @@ def get_covid_ov( """ cases = get_global_cases(country) deaths = get_global_deaths(country) + if cases.empty or deaths.empty: + return pd.DataFrame() data = pd.concat([cases, deaths], axis=1) data.columns = ["Cases", "Deaths"] data.index = [x.strftime("%Y-%m-%d") for x in data.index] From e6c7b976cd9cf6ac37b2dd5879cad619a2293abd Mon Sep 17 00:00:00 2001 From: colin99d Date: Thu, 17 Nov 2022 14:24:35 +0100 Subject: [PATCH 3/3] Added fixes to how tests work --- openbb_terminal/alternative/covid/covid_model.py | 2 ++ openbb_terminal/alternative/covid/covid_view.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/openbb_terminal/alternative/covid/covid_model.py b/openbb_terminal/alternative/covid/covid_model.py index acd3e1b7ba35..4f039214e21e 100644 --- a/openbb_terminal/alternative/covid/covid_model.py +++ b/openbb_terminal/alternative/covid/covid_model.py @@ -120,6 +120,8 @@ def get_covid_ov( pd.DataFrame Dataframe of historical cases and deaths """ + if country.lower() == "us": + country = "US" cases = get_global_cases(country) deaths = get_global_deaths(country) if cases.empty or deaths.empty: diff --git a/openbb_terminal/alternative/covid/covid_view.py b/openbb_terminal/alternative/covid/covid_view.py index 3418e078f321..68c56c877dc9 100644 --- a/openbb_terminal/alternative/covid/covid_view.py +++ b/openbb_terminal/alternative/covid/covid_view.py @@ -150,6 +150,8 @@ def display_covid_ov( plot: bool Flag to display historical plot """ + if country.lower() == "us": + country = "US" if plot: plot_covid_ov(country) if raw: