From bbeaef473201ea4f49c963d51058a3eadc48bc61 Mon Sep 17 00:00:00 2001 From: Luqman Date: Fri, 17 Feb 2023 15:59:14 +0100 Subject: [PATCH] Code Coverage (#4236) * Code Coverage * minor fix * Remove coverage limit check * Check code cov * removed env * Tests : fixing tests + autocompletion bug * Tests : skip a test * Linting * Tests : skip slow coins test on crypto * Added check for coverage * Remove failure test * Minor tweak * Added code coverage to base test --------- Co-authored-by: Chavithra Co-authored-by: James Maslek --- .github/workflows/code-coverage.yml | 50 ++ .github/workflows/unit-test.yml | 4 +- .../due_diligence/dd_controller.py | 6 +- .../account/test_account_controller.py | 3 + .../cryptocurrency/test_crypto_models.py | 30 +- .../cryptocurrency/test_crypto_views.py | 30 +- .../economy/test_economy_controller.py | 18 + .../test_call_func[display_info].yaml | 459 ----------------- .../test_display_info.yaml | 461 ++++++++++++++++++ .../test_business_insider_view.py | 4 + .../test_yahoo_finance_view.py | 6 +- .../test_price_target_from_analysts_raw.txt | 4 +- .../test_call_func[display_info].txt | 21 - 13 files changed, 577 insertions(+), 519 deletions(-) create mode 100644 .github/workflows/code-coverage.yml delete mode 100644 tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_call_func[display_info].yaml create mode 100644 tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_display_info.yaml delete mode 100644 tests/openbb_terminal/stocks/fundamental_analysis/txt/test_yahoo_finance_view/test_call_func[display_info].txt diff --git a/.github/workflows/code-coverage.yml b/.github/workflows/code-coverage.yml new file mode 100644 index 00000000000..ab8161cf434 --- /dev/null +++ b/.github/workflows/code-coverage.yml @@ -0,0 +1,50 @@ +name: Code Coverage Tests + +on: workflow_dispatch + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + code-coverage: + runs-on: ubuntu-latest + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} + steps: + - name: Checkout code + if: github.event_name == 'push' + uses: actions/checkout@v3 + + - name: Checkout specific ref + if: github.event_name == 'pull_request' + run: git fetch origin ${{ github.event.pull_request.head.ref }} && git checkout FETCH_HEAD + + - name: Setup Python 3.9 + uses: actions/setup-python@v4 + with: + python-version: "3.9" + architecture: x64 + + - name: Install Poetry + uses: snok/install-poetry@v1 + with: + version: 1.3.2 + virtualenvs-create: true + virtualenvs-in-project: true + + - name: Load cached venv + id: cached-poetry-dependencies + uses: actions/cache@v3 + with: + path: .venv + key: venv-${{ runner.os }}-v1-${{ hashFiles('**/poetry.lock') }} + + - name: Install dependencies + if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' + run: poetry install --no-interaction -E optimization + + - name: Run code coverage tests + run: | + source $VENV + pytest --cov --cov-fail-under=50 \ No newline at end of file diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 700d63ebdee..07f1885e435 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -94,12 +94,12 @@ jobs: if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' run: poetry install --no-interaction -E optimization - - name: Run tests + - name: Run tests and coverage test env: MPLBACKEND: Agg run: | source $VENV - pytest tests/ --optimization --autodoc + pytest tests/ --optimization --cov --cov-fail-under=50 --autodoc - name: Start Terminal and exit run: | diff --git a/openbb_terminal/cryptocurrency/due_diligence/dd_controller.py b/openbb_terminal/cryptocurrency/due_diligence/dd_controller.py index a21e7933580..6922cdb4c7f 100644 --- a/openbb_terminal/cryptocurrency/due_diligence/dd_controller.py +++ b/openbb_terminal/cryptocurrency/due_diligence/dd_controller.py @@ -509,7 +509,6 @@ class DueDiligenceController(CryptoBaseController): @log_start_end(log=logger) def call_oi(self, other_args): """Process oi command""" - assert isinstance(self.symbol, str) # noqa: S101 parser = argparse.ArgumentParser( add_help=False, formatter_class=argparse.ArgumentDefaultsHelpFormatter, @@ -535,6 +534,7 @@ class DueDiligenceController(CryptoBaseController): ) if ns_parser: + assert isinstance(self.symbol, str) # noqa: S101 coinglass_view.display_open_interest( symbol=self.symbol.upper(), interval=ns_parser.interval, @@ -547,7 +547,6 @@ class DueDiligenceController(CryptoBaseController): @log_start_end(log=logger) def call_liquidations(self, other_args): """Process liquidations command""" - assert isinstance(self.symbol, str) # noqa: S101 parser = argparse.ArgumentParser( add_help=False, formatter_class=argparse.ArgumentDefaultsHelpFormatter, @@ -563,6 +562,7 @@ class DueDiligenceController(CryptoBaseController): ) if ns_parser: + assert isinstance(self.symbol, str) # noqa: S101 coinglass_view.display_liquidations( symbol=self.symbol.upper(), export=ns_parser.export, @@ -574,7 +574,6 @@ class DueDiligenceController(CryptoBaseController): @log_start_end(log=logger) def call_fundrate(self, other_args): """Process fundrate command""" - assert isinstance(self.symbol, str) # noqa: S101 parser = argparse.ArgumentParser( add_help=False, formatter_class=argparse.ArgumentDefaultsHelpFormatter, @@ -590,6 +589,7 @@ class DueDiligenceController(CryptoBaseController): ) if ns_parser: + assert isinstance(self.symbol, str) # noqa: S101 coinglass_view.display_funding_rate( symbol=self.symbol.upper(), export=ns_parser.export, diff --git a/tests/openbb_terminal/account/test_account_controller.py b/tests/openbb_terminal/account/test_account_controller.py index fd6d4a64561..71e883a34ba 100644 --- a/tests/openbb_terminal/account/test_account_controller.py +++ b/tests/openbb_terminal/account/test_account_controller.py @@ -535,6 +535,9 @@ def test_call_download(mocker): ) +@pytest.mark.skip( + reason="We should add a `-y or -f` option to make that easier to test" +) def test_call_delete(mocker): controller = account_controller.AccountController(queue=None) path_controller = "openbb_terminal.account.account_controller" diff --git a/tests/openbb_terminal/cryptocurrency/test_crypto_models.py b/tests/openbb_terminal/cryptocurrency/test_crypto_models.py index 0b56dde57b2..118c4c8688f 100644 --- a/tests/openbb_terminal/cryptocurrency/test_crypto_models.py +++ b/tests/openbb_terminal/cryptocurrency/test_crypto_models.py @@ -21,11 +21,11 @@ from openbb_terminal.cryptocurrency import crypto_models "CoinGecko", "symbol", ], - [ - "doge", - "CoinGecko", - "name", - ], + # [ TOO SLOW + # "doge", + # "CoinGecko", + # "name", + # ], [ "bitcoin", "CoinPaprika", @@ -41,11 +41,11 @@ from openbb_terminal.cryptocurrency import crypto_models "CoinPaprika", "name", ], - [ - "btc", - "Binance", - "id", - ], + # [ TOO SLOW + # "btc", + # "Binance", + # "id", + # ], [ "polka", "Binance", @@ -56,11 +56,11 @@ from openbb_terminal.cryptocurrency import crypto_models "Binance", "id", ], - [ - "btc", - "Coinbase", - "id", - ], + # [ TOO SLOW + # "btc", + # "Coinbase", + # "id", + # ], [ "polka", "Coinbase", diff --git a/tests/openbb_terminal/cryptocurrency/test_crypto_views.py b/tests/openbb_terminal/cryptocurrency/test_crypto_views.py index 5905f8b5229..0fae9f21992 100644 --- a/tests/openbb_terminal/cryptocurrency/test_crypto_views.py +++ b/tests/openbb_terminal/cryptocurrency/test_crypto_views.py @@ -21,11 +21,11 @@ from openbb_terminal.cryptocurrency import crypto_views "CoinGecko", "symbol", ], - [ - "doge", - "CoinGecko", - "name", - ], + # [ TOO SLOW + # "doge", + # "CoinGecko", + # "name", + # ], [ "btc", "CoinPaprika", @@ -41,11 +41,11 @@ from openbb_terminal.cryptocurrency import crypto_views "CoinPaprika", "name", ], - [ - "btc", - "Binance", - "id", - ], + # [ TOO SLOW + # "btc", + # "Binance", + # "id", + # ], [ "bt", "Binance", @@ -56,11 +56,11 @@ from openbb_terminal.cryptocurrency import crypto_views "Binance", "id", ], - [ - "btc", - "Coinbase", - "id", - ], + # [ TOO SLOW + # "btc", + # "Coinbase", + # "id", + # ], [ "bt", "Coinbase", diff --git a/tests/openbb_terminal/economy/test_economy_controller.py b/tests/openbb_terminal/economy/test_economy_controller.py index a1d7ecec1eb..27379e09324 100644 --- a/tests/openbb_terminal/economy/test_economy_controller.py +++ b/tests/openbb_terminal/economy/test_economy_controller.py @@ -621,6 +621,9 @@ def test_call_func( # MOCK REMOVE mocker.patch(target=f"{path_controller}.os.remove") + # MOCK UPDATE_RUNTIME_CHOICES + mocker.patch(target=f"{path_controller}.EconomyController.update_runtime_choices") + if mocked_func: mock = mocker.Mock() mocker.patch( @@ -765,6 +768,9 @@ def test_call_macro(mocked_func, other_args, called_args, called_kwargs, mocker) # MOCK REMOVE mocker.patch(target=f"{path_controller}.os.remove") + + # MOCK UPDATE_RUNTIME_CHOICES + mocker.patch(target=f"{path_controller}.EconomyController.update_runtime_choices") # MOCK the econdb.get_aggregated_macro_data mocker.patch( target=f"{path_controller}.econdb_model.get_aggregated_macro_data", @@ -799,6 +805,9 @@ def test_call_fred_query(mocker): # MOCK REMOVE mocker.patch(target=f"{path_controller}.os.remove") + # MOCK UPDATE_RUNTIME_CHOICES + mocker.patch(target=f"{path_controller}.EconomyController.update_runtime_choices") + mocker.patch( target=f"{path_controller}.fred_model.get_series_notes", return_value=MOCK_FRED_NOTES, @@ -873,6 +882,9 @@ def test_call_fred_params(mocked_func, other_args, called_args, called_kwargs, m # MOCK REMOVE mocker.patch(target=f"{path_controller}.os.remove") + # MOCK UPDATE_RUNTIME_CHOICES + mocker.patch(target=f"{path_controller}.EconomyController.update_runtime_choices") + # MOCK the fred functions used mocker.patch( target=f"{path_controller}.fred_model.check_series_id", @@ -935,6 +947,9 @@ def test_call_index(mocker): # MOCK REMOVE mocker.patch(target=f"{path_controller}.os.remove") + # MOCK UPDATE_RUNTIME_CHOICES + mocker.patch(target=f"{path_controller}.EconomyController.update_runtime_choices") + # MOCK the fred functions used mocker.patch( target=f"{path_controller}.yfinance_model.get_index", @@ -1007,6 +1022,9 @@ def test_call_treasury(mocked_func, other_args, called_args, called_kwargs, mock # MOCK REMOVE mocker.patch(target=f"{path_controller}.os.remove") + + # MOCK UPDATE_RUNTIME_CHOICES + mocker.patch(target=f"{path_controller}.EconomyController.update_runtime_choices") # MOCK the econdb.get_aggregated_macro_data mocker.patch( target=f"{path_controller}.econdb_model.get_treasuries", diff --git a/tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_call_func[display_info].yaml b/tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_call_func[display_info].yaml deleted file mode 100644 index d63886b706b..00000000000 --- a/tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_call_func[display_info].yaml +++ /dev/null @@ -1,459 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - method: GET - uri: https://query2.finance.yahoo.com/v8/finance/chart/PM?events=div%2Csplits%2CcapitalGains&includePrePost=False&interval=1d&range=380d - response: - body: - string: !!binary | - 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 - headers: - Age: - - '0' - Connection: - - keep-alive - Expect-CT: - - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" - Referrer-Policy: - - no-referrer-when-downgrade - Strict-Transport-Security: - - max-age=15552000 - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - 1; mode=block - cache-control: - - public, max-age=10, stale-while-revalidate=20 - content-encoding: - - gzip - content-type: - - application/json;charset=utf-8 - date: - - Mon, 13 Feb 2023 10:35:40 GMT - server: - - ATS - vary: - - Origin,Accept-Encoding - x-envoy-decorator-operation: - - finance-chart-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* - x-envoy-upstream-service-time: - - '24' - x-request-id: - - 874b22c0-dad0-4983-9ebd-c39968ee931d - x-yahoo-request-id: - - dvsnpdphuk4jt - y-rid: - - dvsnpdphuk4jt - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - method: GET - uri: https://query2.finance.yahoo.com/v8/finance/chart/PM?interval=1d&range=1d - response: - body: - string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"PM","exchangeName":"NYQ","instrumentType":"EQUITY","firstTradeDate":1205760600,"regularMarketTime":1676062802,"gmtoffset":-18000,"timezone":"EST","exchangeTimezoneName":"America/New_York","regularMarketPrice":102.36,"chartPreviousClose":102.02,"priceHint":2,"currentTradingPeriod":{"pre":{"timezone":"EST","start":1676278800,"end":1676298600,"gmtoffset":-18000},"regular":{"timezone":"EST","start":1676298600,"end":1676322000,"gmtoffset":-18000},"post":{"timezone":"EST","start":1676322000,"end":1676336400,"gmtoffset":-18000}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1676039400],"indicators":{"quote":[{"high":[102.48999786376953],"close":[102.36000061035156],"volume":[3692500],"low":[100.9800033569336],"open":[102.16999816894531]}],"adjclose":[{"adjclose":[102.36000061035156]}]}}],"error":null}}' - headers: - Age: - - '0' - Connection: - - keep-alive - Expect-CT: - - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" - Referrer-Policy: - - no-referrer-when-downgrade - Strict-Transport-Security: - - max-age=15552000 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - 1; mode=block - cache-control: - - public, max-age=10, stale-while-revalidate=20 - content-length: - - '943' - content-type: - - application/json;charset=utf-8 - date: - - Mon, 13 Feb 2023 10:35:41 GMT - server: - - ATS - vary: - - Origin,Accept-Encoding - x-envoy-decorator-operation: - - finance-chart-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* - x-envoy-upstream-service-time: - - '28' - x-request-id: - - be5a5662-53a1-4153-9faa-1d9f40f6ad38 - x-yahoo-request-id: - - 1t003dlhuk4jt - y-rid: - - 1t003dlhuk4jt - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - method: GET - uri: https://query2.finance.yahoo.com/ws/fundamentals-timeseries/v1/finance/timeseries/PM?period1=1598220000&period2=1635980400&symbol=PM - response: - body: - string: '{"timeseries":{"result":[{"meta":{"symbol":["PM"],"type":["shares_out"]},"timestamp":[1634601600,1634601600,1635206400,1635206400,1635465600,1636070400,1636156800,1643068800,1643155200,1643932800,1644019200,1644537600,1644883200,1646352000,1646438400,1648425600,1651276800,1651708800,1653609600,1657065600,1657065600,1657843200,1657843200,1659139200,1659484800,1659657600,1659744000,1660089600,1660348800,1663027200,1666310400,1666483200,1667001600,1667260800,1670025600,1670112000,1670284800,1670371200,1676073600],"shares_out":[1573250048,1558540032,1558540032,1564029952,1556829952,1573609984,1556829952,1593049984,1556829952,1558179968,1556829952,1556829952,1549830016,1550739968,1549830016,1550080000,1550109952,1550109952,1557280000,1550109952,1576029952,1550109952,1567929984,1550160000,1550160000,1562979968,1550160000,1554460032,1550160000,1550160000,1576419968,1550160000,1550200064,1550200064,1593600000,1550200064,1562489984,1550200064,1550230016]}],"error":null}}' - headers: - Age: - - '0' - Connection: - - keep-alive - Expect-CT: - - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" - Referrer-Policy: - - no-referrer-when-downgrade - Strict-Transport-Security: - - max-age=15552000 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - 1; mode=block - cache-control: - - public, max-age=60, stale-while-revalidate=30 - content-length: - - '976' - content-type: - - application/json;charset=utf-8 - date: - - Mon, 13 Feb 2023 10:35:41 GMT - server: - - ATS - vary: - - Origin,Accept-Encoding - x-envoy-decorator-operation: - - finance-company-fundamentals-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* - x-envoy-upstream-service-time: - - '1' - x-request-id: - - 3a27afc7-b15f-4add-894d-b37a16e69d9e - x-yahoo-request-id: - - 3v5ujudhuk4jt - y-rid: - - 3v5ujudhuk4jt - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - method: GET - uri: https://query2.finance.yahoo.com/v8/finance/chart/PM?events=div%2Csplits%2CcapitalGains&includePrePost=True&interval=1h&range=1wk - response: - body: - string: !!binary | - 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 - d/Xs1fa4Xr+8/A8X+h2XChsAAA== - headers: - Age: - - '0' - Connection: - - keep-alive - Expect-CT: - - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" - Referrer-Policy: - - no-referrer-when-downgrade - Strict-Transport-Security: - - max-age=15552000 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - 1; mode=block - cache-control: - - public, max-age=10, stale-while-revalidate=20 - content-encoding: - - gzip - content-length: - - '2014' - content-type: - - application/json;charset=utf-8 - date: - - Mon, 13 Feb 2023 10:35:41 GMT - server: - - ATS - vary: - - Origin,Accept-Encoding - x-envoy-decorator-operation: - - finance-chart-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* - x-envoy-upstream-service-time: - - '15' - x-request-id: - - a25cc11b-bf3d-454a-bdbf-02dd11019060 - x-yahoo-request-id: - - 2hglvr1huk4jt - y-rid: - - 2hglvr1huk4jt - status: - code: 200 - message: OK -version: 1 diff --git a/tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_display_info.yaml b/tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_display_info.yaml new file mode 100644 index 00000000000..3bea98bf81c --- /dev/null +++ b/tests/openbb_terminal/stocks/fundamental_analysis/cassettes/test_yahoo_finance_view/test_display_info.yaml @@ -0,0 +1,461 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://query2.finance.yahoo.com/v8/finance/chart/TSLA?events=div%2Csplits%2CcapitalGains&includePrePost=False&interval=1d&range=380d + response: + body: + string: !!binary | + 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 + N9cFc97Wed5Q1qa/YYN3dxijoHsfZ5XemJSS5A2kb+rQJv5N9GWEdy6M87dCLyvRNQ5V1xvFidzl + 8+O8gozetX91XEMgBp3JMvUjYCyIMsV30uJqD4rXdLpb1ijQ/dVv2UcjmXA/8jzJX0Am94k6TMm1 + 3RTS/oLK0I6W3FAOMUWP010m11dM8u7NRfL/VeGD63P4jItcLbf0hAmMc0++iSi2c+fn7Ufpbj7r + 3n1zPsSaj5TRGUQeqxWBOVjXsROOu8nkUnEbo2dBmQvbz6NxNLqCOlk3HCHu7q7dktyJDSEyDH50 + JEnrzvAcIakYuRur3/15xuMw43HdGD6rxwV07s6sno4wPEWNv20ue/qV3bnmrdrOK8CO9CCvdHMU + weSQS06VQyAwFeSPIZ+dZSmdl5hFKaa+pF3kig07iDclEoQ+2pL7v94IN+UIwpEEiKH7xqHQjya0 + cAh3zntcDOcqcta9c/6uON5ewv+jxlu1CalU/QZ5ya37mCacA4SOj80+MWPg0i00kYJhcxhPPhrC + G/h8BoYxZZsDbNKuxCJmd/5yK4HNK9Gx8eSc/X38kgtyWdXpaX4eG6c8Pe54TPcumDtAOCsOWLPs + jCW5xPO64ne/fPf48Obt/9VWpZ+v/3jtW6qvfUuvfUuvfUtXg/S1b+m1b+m1b+m1b+m1b+m1b+m1 + b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m1b+m/qW/pl+9+Ydrq + 6eXl+eXhm49f3r//5Zf/BL3+OJmeowAA + headers: + Age: + - '1' + Connection: + - keep-alive + Expect-CT: + - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" + Referrer-Policy: + - no-referrer-when-downgrade + Strict-Transport-Security: + - max-age=15552000 + Transfer-Encoding: + - chunked + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - 1; mode=block + cache-control: + - public, max-age=10, stale-while-revalidate=20 + content-encoding: + - gzip + content-type: + - application/json;charset=utf-8 + date: + - Thu, 16 Feb 2023 17:54:12 GMT + server: + - ATS + vary: + - Origin,Accept-Encoding + x-envoy-decorator-operation: + - finance-chart-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* + x-envoy-upstream-service-time: + - '7' + x-request-id: + - 03d06ff0-0170-46a5-9a79-9b8c4a98cc88 + x-yahoo-request-id: + - 3its3fdhusre5 + y-rid: + - 3its3fdhusre5 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://query2.finance.yahoo.com/v8/finance/chart/TSLA?interval=1d&range=1d + response: + body: + string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"TSLA","exchangeName":"NMS","instrumentType":"EQUITY","firstTradeDate":1277818200,"regularMarketTime":1676570052,"gmtoffset":-18000,"timezone":"EST","exchangeTimezoneName":"America/New_York","regularMarketPrice":213.23,"chartPreviousClose":214.24,"priceHint":2,"currentTradingPeriod":{"pre":{"timezone":"EST","start":1676538000,"end":1676557800,"gmtoffset":-18000},"regular":{"timezone":"EST","start":1676557800,"end":1676581200,"gmtoffset":-18000},"post":{"timezone":"EST","start":1676581200,"end":1676595600,"gmtoffset":-18000}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1676570052],"indicators":{"quote":[{"close":[213.22999572753906],"low":[208.30999755859375],"open":[210.77999877929688],"volume":[116942652],"high":[217.64999389648438]}],"adjclose":[{"adjclose":[213.22999572753906]}]}}],"error":null}}' + headers: + Age: + - '0' + Connection: + - keep-alive + Expect-CT: + - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" + Referrer-Policy: + - no-referrer-when-downgrade + Strict-Transport-Security: + - max-age=15552000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - 1; mode=block + cache-control: + - public, max-age=10, stale-while-revalidate=20 + content-length: + - '948' + content-type: + - application/json;charset=utf-8 + date: + - Thu, 16 Feb 2023 17:54:13 GMT + server: + - ATS + vary: + - Origin,Accept-Encoding + x-envoy-decorator-operation: + - finance-chart-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* + x-envoy-upstream-service-time: + - '1' + x-request-id: + - 5c3c5124-66f4-43bd-961c-c132a709d566 + x-yahoo-request-id: + - 6pdkv65husre5 + y-rid: + - 6pdkv65husre5 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://query2.finance.yahoo.com/ws/fundamentals-timeseries/v1/finance/timeseries/TSLA?period1=1598220000&period2=1635980400&symbol=TSLA + response: + body: + string: '{"timeseries":{"result":[{"meta":{"symbol":["TSLA"],"type":["shares_out"]},"timestamp":[1630108800,1630281600,1633478400,1633564800,1635206400,1635292800,1638489600,1638576000,1643932800,1644019200,1644278400,1644537600,1646352000,1646438400,1647302400,1647475200,1648425600,1648684800,1648771200,1648857600,1651190400,1656633600,1658793600,1660867200,1660953600,1661731200,1662076800,1663200000,1663286400,1663372800,1665532800,1665619200,1666742400,1667865600,1668038400,1670284800,1670371200,1672790400,1672963200,1675296000],"shares_out":[1001769984,1001769984,1002969984,1001769984,1004259968,1004259968,1013889984,1004259968,1020630016,1004259968,1033510016,1033510016,1083500032,1033510016,1072590016,1033510016,1036860032,1033510016,1049230016,1033510016,1036009984,1036390016,1044489984,1048380032,1044489984,3133469952,3133469952,3024950016,3121710080,3133469952,3226970112,3133469952,3157750016,3324229888,3157750016,3372539904,3157750016,3598259968,3157750016,3164100096]}],"error":null}}' + headers: + Age: + - '1' + Connection: + - keep-alive + Expect-CT: + - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" + Referrer-Policy: + - no-referrer-when-downgrade + Strict-Transport-Security: + - max-age=15552000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - 1; mode=block + cache-control: + - public, max-age=60, stale-while-revalidate=30 + content-length: + - '1000' + content-type: + - application/json;charset=utf-8 + date: + - Thu, 16 Feb 2023 17:54:12 GMT + server: + - ATS + vary: + - Origin,Accept-Encoding + x-envoy-decorator-operation: + - finance-company-fundamentals-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* + x-envoy-upstream-service-time: + - '1' + x-request-id: + - 8b641a75-4fcf-4d2b-93a6-e07d7241fa74 + x-yahoo-request-id: + - 2kpfvg1husre5 + y-rid: + - 2kpfvg1husre5 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + method: GET + uri: https://query2.finance.yahoo.com/v8/finance/chart/TSLA?events=div%2Csplits%2CcapitalGains&includePrePost=True&interval=1h&range=1wk + response: + body: + string: !!binary | + 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 + 8QIAHQAA + headers: + Age: + - '0' + Connection: + - keep-alive + Expect-CT: + - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only" + Referrer-Policy: + - no-referrer-when-downgrade + Strict-Transport-Security: + - max-age=15552000 + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - 1; mode=block + cache-control: + - public, max-age=10, stale-while-revalidate=20 + content-encoding: + - gzip + content-length: + - '2457' + content-type: + - application/json;charset=utf-8 + date: + - Thu, 16 Feb 2023 17:54:13 GMT + server: + - ATS + vary: + - Origin,Accept-Encoding + x-envoy-decorator-operation: + - finance-chart-api--mtls-production-ir2.finance-k8s.svc.yahoo.local:4080/* + x-envoy-upstream-service-time: + - '21' + x-request-id: + - ad35adad-86c2-4f6f-a0dd-0402e3a6922e + x-yahoo-request-id: + - 8l68s21husre5 + y-rid: + - 8l68s21husre5 + status: + code: 200 + message: OK +version: 1 diff --git a/tests/openbb_terminal/stocks/fundamental_analysis/test_business_insider_view.py b/tests/openbb_terminal/stocks/fundamental_analysis/test_business_insider_view.py index b5254170626..b4cddd1e490 100644 --- a/tests/openbb_terminal/stocks/fundamental_analysis/test_business_insider_view.py +++ b/tests/openbb_terminal/stocks/fundamental_analysis/test_business_insider_view.py @@ -15,6 +15,10 @@ from openbb_terminal.stocks.stocks_helper import load def vcr_config(): return { "filter_headers": [("User-Agent", None)], + "filter_query_parameters": [ + ("period1", "1598220000"), + ("period2", "1635980400"), + ], } diff --git a/tests/openbb_terminal/stocks/fundamental_analysis/test_yahoo_finance_view.py b/tests/openbb_terminal/stocks/fundamental_analysis/test_yahoo_finance_view.py index e14aa26d8fa..55a75127194 100644 --- a/tests/openbb_terminal/stocks/fundamental_analysis/test_yahoo_finance_view.py +++ b/tests/openbb_terminal/stocks/fundamental_analysis/test_yahoo_finance_view.py @@ -24,7 +24,6 @@ def vcr_config(): @pytest.mark.parametrize( "func", [ - "display_info", "display_shareholders", "display_dividends", "display_splits", @@ -39,6 +38,11 @@ def test_call_func(func, mocker): getattr(yahoo_finance_view, func)(symbol="PM") +@pytest.mark.vcr +def test_display_info(): + yahoo_finance_view.display_info(symbol="TSLA") + + @pytest.mark.vcr(record_mode="none") @pytest.mark.record_stdout @pytest.mark.parametrize( diff --git a/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_business_insider_view/test_price_target_from_analysts_raw.txt b/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_business_insider_view/test_price_target_from_analysts_raw.txt index b90a0e28016..f3f0983c4ae 100644 --- a/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_business_insider_view/test_price_target_from_analysts_raw.txt +++ b/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_business_insider_view/test_price_target_from_analysts_raw.txt @@ -1,6 +1,4 @@ - -1 Failed download: -- TSLA: No data found for this date range, symbol may be delisted +Loading Daily data for TSLA with starting period 2020-02-10. Company Rating Price Target Date 2023-02-06 Wedbush Morgan Securities Inc. BUY 225.000000 diff --git a/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_yahoo_finance_view/test_call_func[display_info].txt b/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_yahoo_finance_view/test_call_func[display_info].txt deleted file mode 100644 index 5d169bc5a61..00000000000 --- a/tests/openbb_terminal/stocks/fundamental_analysis/txt/test_yahoo_finance_view/test_call_func[display_info].txt +++ /dev/null @@ -1,21 +0,0 @@ - Value -Currency USD -Day high 102.490 -Day low 100.980 -Exchange NYQ -Fifty day average 102.007 -Last price 102.360 -Last volume 3.692 M -Market cap 158.682 B -Open 102.170 -Previous close 102.020 -Quote type EQUITY -Regular market previous close 102.020 -Shares 1.550 B -Ten day average volume 3.910 M -Three month average volume 4.860 M -Timezone America/New_York -Two hundred day average 97.606 -Year change -0.067 -Year high 112.480 -Year low 82.850