def test_get_instruments(mocker): mocker.patch.object(GsPortfolioApi, 'get_position_dates', return_value=([ dt.date(2021, 1, 2), dt.date(2021, 5, 6), dt.date(2021, 6, 1) ])) mocker.patch.object(GsPortfolioApi, 'get_positions_for_date', return_value=(PositionSet(position_date=dt.date( 2021, 6, 1), positions=[]))) mocker.patch.object(GsPortfolioApi, 'get_portfolio', return_value=(MarqueePortfolio(id_='id', name='name', currency='USD'))) mocker.patch.object(GsAssetApi, 'get_instruments_for_positions', return_value=([])) port = Portfolio.get(portfolio_id='id') port._get_instruments(dt.date(2021, 5, 14), False) GsPortfolioApi.get_positions_for_date.assert_called_with( 'id', dt.date(2021, 5, 6))
def test_pull_from_marquee(mocker): portfolio_search_results = { 'results': [ MQPortfolio(id='portfolio_id', name='Test Portfolio', currency='USD', entitlements=Entitlements(admin=('guid:12345', ))) ] } mocker.patch.object(GsSession.current, '_get', return_value=portfolio_search_results) mocker.patch.object(User, 'get_many', return_value=([ User(user_id='12345', name='Fake User', email='*****@*****.**', company='Goldman Sachs') ])) portfolio = Portfolio.get(name='Test Portfolio') assert portfolio.id == 'portfolio_id' return portfolio