def test_immutable_refresh(self, mock_send_request): try: model = Immutable() model.key = 'value' self.assertFalse(model.refresh(force=False)) self.assertRaises(tutum.TutumApiError, model.refresh, force=True) Immutable.endpoint = 'fake' model._detail_uri = 'fake/uuid' mock_send_request.side_effect = [{'newkey': 'newvalue'}, None] self.assertTrue(model.refresh(force=True)) self.assertEqual('newvalue', model.newkey) mock_send_request.assert_called_with('GET', 'fake/uuid') self.assertFalse(model.refresh(force=True)) mock_send_request.assert_called_with('GET', 'fake/uuid') finally: if hasattr(Immutable, 'endpoint'): delattr(Immutable, 'endpoint')