mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-28 21:12:16 +00:00
* Added handling for bad data * Fixed stocks/ba * Fixed stocks/disc * Fixed stocks/fa * Added test fixes
103 lines
2.4 KiB
Python
103 lines
2.4 KiB
Python
# IMPORTATION STANDARD
|
|
|
|
# IMPORTATION THIRDPARTY
|
|
import pandas as pd
|
|
import pytest
|
|
|
|
# IMPORTATION INTERNAL
|
|
from openbb_terminal.common.behavioural_analysis import google_view
|
|
|
|
# pylint: disable=E1101
|
|
# pylint: disable=W0603
|
|
# pylint: disable=E1111
|
|
# pylint: disable=W0621
|
|
# pylint: disable=W0613
|
|
|
|
|
|
@pytest.fixture
|
|
def get_queries_response():
|
|
"""
|
|
mock response from get_queries function in google_model
|
|
"""
|
|
top_list = [
|
|
["stock aapl", 100],
|
|
["aapl price", 29],
|
|
["stock price aapl", 24],
|
|
["amzn", 19],
|
|
["tsla", 19],
|
|
["msft", 15],
|
|
["tsla stock", 12],
|
|
["amzn stock", 11],
|
|
["fb stock", 10],
|
|
["msft stock", 9],
|
|
["nvda", 7],
|
|
["dow", 6],
|
|
["tesla", 6],
|
|
["amd", 5],
|
|
["goog", 5],
|
|
["baba", 5],
|
|
["aapl premarket", 5],
|
|
["nvda stock", 5],
|
|
["tesla stock", 5],
|
|
["amd stock", 4],
|
|
["aapl stock price today", 4],
|
|
["nflx", 4],
|
|
["nio", 4],
|
|
["baba stock", 4],
|
|
["nio stock", 4],
|
|
]
|
|
|
|
resp = {
|
|
"AAPL": {
|
|
"top": pd.DataFrame(top_list, columns=["query", "value"]),
|
|
"rising": pd.DataFrame(top_list, columns=["query", "value"]),
|
|
}
|
|
}
|
|
|
|
return pd.DataFrame(resp)
|
|
|
|
|
|
@pytest.mark.default_cassette("test_google_view")
|
|
@pytest.mark.vcr
|
|
@pytest.mark.parametrize(
|
|
"symbol, limit, export",
|
|
[
|
|
(
|
|
# standard run without export
|
|
"AAPL",
|
|
25,
|
|
"",
|
|
),
|
|
(
|
|
# standard run WITH export
|
|
"AAPL",
|
|
25,
|
|
"csv",
|
|
),
|
|
],
|
|
)
|
|
def test_display_queries(mocker, symbol, limit, export, get_queries_response):
|
|
# MOCK VISUALIZE_OUTPUT
|
|
mocker.patch(target="openbb_terminal.helper_classes.TerminalStyle.visualize_output")
|
|
|
|
# MOCK GOOGLE_MODEL
|
|
mocker.patch(
|
|
target="openbb_terminal.common.behavioural_analysis.google_model.get_queries",
|
|
return_value=get_queries_response,
|
|
)
|
|
|
|
# MOCK EXPORT_DATA
|
|
export_mock = mocker.Mock()
|
|
mocker.patch(
|
|
target="openbb_terminal.common.behavioural_analysis.google_view.export_data",
|
|
new=export_mock,
|
|
)
|
|
|
|
google_view.display_queries(symbol, limit, export)
|
|
|
|
if export:
|
|
pd.testing.assert_frame_equal(
|
|
export_mock.call_args[0][3], # fourth positional arg is the df
|
|
pd.DataFrame(get_queries_response), # expected DF
|
|
)
|