Esempio n. 1
0
 def set_entitlements(self, entitlements: Entitlements):
     """
     Set the entitlements of a portfolio
     :param entitlements: Entitlements object
     """
     entitlements_as_target = entitlements.to_target()
     portfolio_as_target = GsPortfolioApi.get_portfolio(self.__portfolio_id)
     portfolio_as_target.entitlements = entitlements_as_target
     GsPortfolioApi.update_portfolio(portfolio_as_target)
Esempio n. 2
0
 def set_aum_source(self, aum_source: RiskAumSource):
     """
     Set portfolio AUM Source
     :param aum_source: aum source for portfolio
     :return:
     """
     portfolio = GsPortfolioApi.get_portfolio(self.portfolio_id)
     portfolio.aum_source = aum_source
     GsPortfolioApi.update_portfolio(portfolio)
Esempio n. 3
0
 def _update(self):
     GsPortfolioApi.update_portfolio(
         portfolio=MQPortfolio(name=self.name,
                               id_=self.id,
                               currency=self.currency,
                               entitlements=self.entitlements.to_target()))
     if self.__need_to_schedule_reports:
         self._schedule_first_reports(self.get_position_dates())
         self.__need_to_schedule_reports = False
Esempio n. 4
0
def test_update_portfolio(mocker):
    id_1 = 'MP1'

    portfolio = Portfolio(id=id_1, currency='USD', name='Example Port Renamed')

    # mock GsSession
    mocker.patch.object(GsSession.__class__, 'current', return_value=GsSession.get(Environment.QA, 'client_id', 'secret'))
    mocker.patch.object(GsSession.current, '_put', return_value=portfolio)

    # run test
    response = GsPortfolioApi.update_portfolio(portfolio)
    GsSession.current._put.assert_called_with('/portfolios/{id}'.format(id=id_1), portfolio, cls=Portfolio)
    assert response == portfolio