From 45bdef10b8a3358e48920b04b8cd9b83c5c3efe1 Mon Sep 17 00:00:00 2001 From: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Date: Wed, 26 Jul 2023 17:43:34 +0200 Subject: [PATCH] Test static package_builder update --- .../openbb_core/app/static/package/economy.py | 58 +++++++++---------- .../app/static/package/fixedincome.py | 2 +- .../app/static/package/stocks_fa.py | 4 +- .../openbb_core/app/static/package_builder.py | 7 ++- .../core/tests/test_static_package_builder.py | 16 ++++- 5 files changed, 50 insertions(+), 37 deletions(-) diff --git a/openbb_sdk/sdk/core/openbb_core/app/static/package/economy.py b/openbb_sdk/sdk/core/openbb_core/app/static/package/economy.py index ce7fd38bc5f..1f21772dec6 100644 --- a/openbb_sdk/sdk/core/openbb_core/app/static/package/economy.py +++ b/openbb_sdk/sdk/core/openbb_core/app/static/package/economy.py @@ -19,7 +19,7 @@ class CLASS_economy(Container): def corecpi( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """CORECPI.""" inputs = filter_inputs( @@ -248,7 +248,7 @@ class CLASS_economy(Container): def cpi_options( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """Get the options for v3 cpi(options=True)""" inputs = filter_inputs( @@ -448,7 +448,7 @@ class CLASS_economy(Container): def macro( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """Query EconDB for macro data.""" inputs = filter_inputs( @@ -470,7 +470,7 @@ class CLASS_economy(Container): def macro_countries( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """MACRO_COUNTRIES.""" inputs = filter_inputs( @@ -492,7 +492,7 @@ class CLASS_economy(Container): def macro_parameters( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """MACRO_PARAMETERS.""" inputs = filter_inputs( @@ -514,7 +514,7 @@ class CLASS_economy(Container): def balance( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """BALANCE.""" inputs = filter_inputs( @@ -536,7 +536,7 @@ class CLASS_economy(Container): def bigmac( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """BIGMAC.""" inputs = filter_inputs( @@ -558,7 +558,7 @@ class CLASS_economy(Container): def country_codes( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """COUNTRY_CODES.""" inputs = filter_inputs( @@ -580,7 +580,7 @@ class CLASS_economy(Container): def currencies( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """CURRENCIES.""" inputs = filter_inputs( @@ -602,7 +602,7 @@ class CLASS_economy(Container): def debt( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """DEBT.""" inputs = filter_inputs( @@ -624,7 +624,7 @@ class CLASS_economy(Container): def events( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """EVENTS.""" inputs = filter_inputs( @@ -646,7 +646,7 @@ class CLASS_economy(Container): def fgdp( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """FGDP.""" inputs = filter_inputs( @@ -668,7 +668,7 @@ class CLASS_economy(Container): def fred( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """FRED.""" inputs = filter_inputs( @@ -690,7 +690,7 @@ class CLASS_economy(Container): def fred_search( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """FRED Search (was fred_notes).""" inputs = filter_inputs( @@ -712,7 +712,7 @@ class CLASS_economy(Container): def futures( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """FUTURES. 2 sources""" inputs = filter_inputs( @@ -734,7 +734,7 @@ class CLASS_economy(Container): def gdp( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """GDP.""" inputs = filter_inputs( @@ -756,7 +756,7 @@ class CLASS_economy(Container): def glbonds( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """GLBONDS.""" inputs = filter_inputs( @@ -778,7 +778,7 @@ class CLASS_economy(Container): def indices( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """INDICES.""" inputs = filter_inputs( @@ -800,7 +800,7 @@ class CLASS_economy(Container): def overview( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """OVERVIEW.""" inputs = filter_inputs( @@ -822,7 +822,7 @@ class CLASS_economy(Container): def perfmap( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """PERFMAP.""" inputs = filter_inputs( @@ -844,7 +844,7 @@ class CLASS_economy(Container): def performance( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """PERFORMANCE.""" inputs = filter_inputs( @@ -866,7 +866,7 @@ class CLASS_economy(Container): def revenue( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """REVENUE.""" inputs = filter_inputs( @@ -888,7 +888,7 @@ class CLASS_economy(Container): def rgdp( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """RGDP.""" inputs = filter_inputs( @@ -910,7 +910,7 @@ class CLASS_economy(Container): def rtps( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """RTPS.""" inputs = filter_inputs( @@ -932,7 +932,7 @@ class CLASS_economy(Container): def search_index( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """SEARCH_INDEX.""" inputs = filter_inputs( @@ -954,7 +954,7 @@ class CLASS_economy(Container): def spending( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """SPENDING.""" inputs = filter_inputs( @@ -976,7 +976,7 @@ class CLASS_economy(Container): def trust( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """TRUST.""" inputs = filter_inputs( @@ -998,7 +998,7 @@ class CLASS_economy(Container): def usbonds( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """USBONDS.""" inputs = filter_inputs( @@ -1020,7 +1020,7 @@ class CLASS_economy(Container): def valuation( self, chart: bool = False, - provider: Optional[Literal["fred", "polygon", "benzinga", "fmp"]] = None, + provider: Optional[Literal["polygon", "fmp", "fred", "benzinga"]] = None, ) -> CommandOutput[openbb_core.app.model.results.empty.Empty]: """VALUATION.""" inputs = filter_inputs( diff --git a/openbb_sdk/sdk/core/openbb_core/app/static/package/fixedincome.py b/openbb_sdk/sdk/core/openbb_core/app/static/package/fixedincome.py index a46f8309ceb..51d71a38625 100644 --- a/openbb_sdk/sdk/core/openbb_core/app/static/package/fixedincome.py +++ b/openbb_sdk/sdk/core/openbb_core/app/static/package/fixedincome.py @@ -18,7 +18,7 @@ class CLASS_fixedincome(Container): def treasury( self, start_date: Optional[str] = None, - end_date: Optional[str] = "2023-07-24", + end_date: Optional[str] = "2023-07-26", chart: bool = False, provider: Optional[Literal["fmp"]] = None, **kwargs diff --git a/openbb_sdk/sdk/core/openbb_core/app/static/package/stocks_fa.py b/openbb_sdk/sdk/core/openbb_core/app/static/package/stocks_fa.py index f7fd3c64475..c854f49d230 100644 --- a/openbb_sdk/sdk/core/openbb_core/app/static/package/stocks_fa.py +++ b/openbb_sdk/sdk/core/openbb_core/app/static/package/stocks_fa.py @@ -206,8 +206,8 @@ class CLASS_stocks_fa(Container): @validate_arguments def cal( self, - start_date: Union[datetime.date, None, str] = datetime.date(2023, 6, 23), - end_date: Union[datetime.date, None, str] = datetime.date(2023, 7, 23), + start_date: Union[datetime.date, None, str] = datetime.date(2023, 6, 25), + end_date: Union[datetime.date, None, str] = datetime.date(2023, 7, 25), chart: bool = False, provider: Optional[Literal["fmp"]] = None, **kwargs diff --git a/openbb_sdk/sdk/core/openbb_core/app/static/package_builder.py b/openbb_sdk/sdk/core/openbb_core/app/static/package_builder.py index d39df854f3d..4d1b6950b53 100644 --- a/openbb_sdk/sdk/core/openbb_core/app/static/package_builder.py +++ b/openbb_sdk/sdk/core/openbb_core/app/static/package_builder.py @@ -390,10 +390,11 @@ class MethodDefinition: if field_default is None or field_default is MISSING: return Parameter.empty - if field_default is not Ellipsis: - return field_default + default_default = getattr(field_default, "default", None) + if default_default is MISSING or default_default is Ellipsis: + return Parameter.empty - return Parameter.empty + return default_default @staticmethod def is_annotated_dc(annotation) -> bool: diff --git a/openbb_sdk/sdk/core/tests/test_static_package_builder.py b/openbb_sdk/sdk/core/tests/test_static_package_builder.py index 6cbb16f4a07..7e075d011e2 100644 --- a/openbb_sdk/sdk/core/tests/test_static_package_builder.py +++ b/openbb_sdk/sdk/core/tests/test_static_package_builder.py @@ -16,6 +16,7 @@ from openbb_core.app.static.package_builder import ( Parameter, PathHandler, ) +from pydantic import Field @pytest.fixture(scope="module") @@ -144,13 +145,24 @@ def test_get_default(method_definition): """Test get default.""" class TestField: - default = 42 + default = Field(default=42) field = TestField() result = method_definition.get_default(field) assert result == 42 +def test_get_default_none(method_definition): + """Test get default.""" + + class TestField: + default = 42 + + field = TestField() + result = method_definition.get_default(field) + assert result is None + + def test_get_default_default_value(method_definition): """Test get default default value.""" @@ -159,7 +171,7 @@ def test_get_default_default_value(method_definition): field = TestField() result = method_definition.get_default(field) - assert result == _empty + assert result is None def test_get_default_no_default(method_definition):