Esempio n. 1
0
 def update(self):
     """ Updates factor risk model object on Marquee """
     updated_model = RiskModelBuilder(self.coverage,
                                      self.id,
                                      self.name,
                                      self.term,
                                      self.universe_identifier,
                                      self.vendor,
                                      self.version,
                                      description=self.description,
                                      entitlements=self.entitlements)
     GsRiskModelApi.update_risk_model(updated_model)
Esempio n. 2
0
def test_update_risk_model(mocker):
    model = RiskModel.from_dict({
        "coverage": "Global",
        "id": "WW_TEST_MODEL",
        "name": "World Wide Medium Term Test Model",
        "term": "Medium",
        "vendor": "Goldman Sachs",
        "universeIdentifier": "gsid",
        "version": 4
    })

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

    # run test
    response = GsRiskModelApi.update_risk_model(model)
    GsSession.current._put.assert_called_with('/risk/models/{id}'.format(id='WW_TEST_MODEL'), model, cls=RiskModel)
    assert response == model
Esempio n. 3
0
 def save(self):
     """ Upload current Risk Model object to Marquee """
     model = RiskModelBuilder(
         self.coverage,
         self.id,
         self.name,
         self.term,
         self.universe_identifier,
         self.vendor,
         self.version,
         type_=self.type,
         description=self.description,
         entitlements=self.entitlements,
         expected_update_time=self.expected_update_time.strftime('%H:%M:%S')
         if self.expected_update_time else None)
     try:
         GsRiskModelApi.create_risk_model(model)
     except MqRequestError:
         GsRiskModelApi.update_risk_model(model)