def price_historian( accounting_data_dir, inquirer, # pylint: disable=unused-argument should_mock_price_queries, mocked_price_queries, cryptocompare, ): # Since this is a singleton and we want it initialized everytime the fixture # is called make sure its instance is always starting from scratch PriceHistorian._PriceHistorian__instance = None historian = PriceHistorian( data_directory=accounting_data_dir, history_date_start=TEST_HISTORY_DATA_START, cryptocompare=cryptocompare, ) if should_mock_price_queries: def mock_historical_price_query(from_asset, to_asset, timestamp): if from_asset == to_asset: return FVal(1) try: price = mocked_price_queries[from_asset.identifier][ to_asset.identifier][timestamp] except KeyError: raise AssertionError( f'No mocked price found from {from_asset.identifier} to ' f'{to_asset.identifier} at {timestamp}', ) return price historian.query_historical_price = mock_historical_price_query return historian
def price_historian( accounting_data_dir, inquirer, should_mock_price_queries, mocked_price_queries, ): historian = PriceHistorian( data_directory=accounting_data_dir, history_date_start=TEST_HISTORY_DATA_START, inquirer=inquirer, ) if should_mock_price_queries: def mock_historical_price_query(from_asset, to_asset, timestamp): if from_asset == to_asset: return FVal(1) return mocked_price_queries[from_asset][to_asset][timestamp] historian.query_historical_price = mock_historical_price_query return historian
def price_historian( accounting_data_dir, inquirer, # pylint: disable=unused-argument should_mock_price_queries, mocked_price_queries, ): # Since this is a singleton and we want it initialized everytime the fixture # is called make sure its instance is always starting from scratch PriceHistorian._PriceHistorian__instance = None historian = PriceHistorian( data_directory=accounting_data_dir, history_date_start=TEST_HISTORY_DATA_START, cryptocompare=Cryptocompare(data_directory=accounting_data_dir), ) if should_mock_price_queries: def mock_historical_price_query(from_asset, to_asset, timestamp): if from_asset == to_asset: return FVal(1) return mocked_price_queries[from_asset][to_asset][timestamp] historian.query_historical_price = mock_historical_price_query return historian