コード例 #1
0
ファイル: test_intents.py プロジェクト: stanzikratel/otter
 def test_merge_effectful_fields_no_log_no_context(self):
     """
     The default otter log is returned when no log is passed and there is no
     effectful context.
     """
     result = merge_effectful_fields(base_dispatcher, None)
     self.assertIs(result, default_log)
コード例 #2
0
ファイル: test_intents.py プロジェクト: stanzikratel/otter
 def test_merge_effectful_fields_no_log_with_context(self):
     """
     A log is returned with fields from the default otter log and the
     context when no log is passed.
     """
     result = merge_effectful_fields(self.disp, None)
     self.assertEqual(result, matches(IsBoundWith(f1='v', system='otter')))
コード例 #3
0
ファイル: intents.py プロジェクト: pratikmallya/otter
def perform_delete_group(log, store, dispatcher, intent):
    """
    Perform `DeleteGroup`
    """
    log = merge_effectful_fields(dispatcher, log)
    group = store.get_scaling_group(log, intent.tenant_id, intent.group_id)
    return group.delete_group()
コード例 #4
0
ファイル: test_intents.py プロジェクト: stanzikratel/otter
 def test_merge_effectful_fields_no_context(self):
     """
     The given log is returned unmodified when there's no effectful context.
     """
     log = mock_log()
     result = merge_effectful_fields(base_dispatcher, log)
     self.assertIs(result, log)
コード例 #5
0
ファイル: test_intents.py プロジェクト: stephamon/otter
 def test_merge_effectful_fields_no_log_with_context(self):
     """
     A log is returned with fields from the default otter log and the
     context when no log is passed.
     """
     result = merge_effectful_fields(self.disp, None)
     self.assertEqual(result, matches(IsBoundWith(f1='v', system='otter')))
コード例 #6
0
ファイル: test_intents.py プロジェクト: stephamon/otter
 def test_merge_effectful_fields_no_log_no_context(self):
     """
     The default otter log is returned when no log is passed and there is no
     effectful context.
     """
     result = merge_effectful_fields(base_dispatcher, None)
     self.assertIs(result, default_log)
コード例 #7
0
ファイル: test_intents.py プロジェクト: stephamon/otter
 def test_merge_effectful_fields_no_context(self):
     """
     The given log is returned unmodified when there's no effectful context.
     """
     log = mock_log()
     result = merge_effectful_fields(base_dispatcher, log)
     self.assertIs(result, log)
コード例 #8
0
ファイル: intents.py プロジェクト: manishtomar/otter
def perform_delete_group(log, store, dispatcher, intent):
    """
    Perform `DeleteGroup`
    """
    log = merge_effectful_fields(dispatcher, log)
    group = store.get_scaling_group(log, intent.tenant_id, intent.group_id)
    return group.delete_group()
コード例 #9
0
ファイル: test_intents.py プロジェクト: stanzikratel/otter
 def test_merge_effectful_fields_log_and_context(self):
     """
     A log is returned with fields from both the passed-in log and the
     effectful context, with the latter taking precedence.
     """
     log = self.log.bind(f1='v2', passed_log=True)
     result = merge_effectful_fields(self.disp, log)
     self.assertEqual(result, matches(IsBoundWith(passed_log=True, f1='v')))
コード例 #10
0
ファイル: test_intents.py プロジェクト: stephamon/otter
 def test_merge_effectful_fields_log_and_context(self):
     """
     A log is returned with fields from both the passed-in log and the
     effectful context, with the latter taking precedence.
     """
     log = self.log.bind(f1='v2', passed_log=True)
     result = merge_effectful_fields(self.disp, log)
     self.assertEqual(result, matches(IsBoundWith(passed_log=True, f1='v')))
コード例 #11
0
ファイル: pure_http.py プロジェクト: stephamon/otter
def perform_request(dispatcher, intent):
    """
    Perform the request with treq.

    :return: A two-tuple of (HTTP Response, content as bytes)
    """
    log = merge_effectful_fields(dispatcher, intent.log)
    response = yield intent.treq.request(intent.method.upper(), intent.url,
                                         headers=intent.headers,
                                         data=intent.data,
                                         params=intent.params,
                                         log=log)
    content = yield intent.treq.content(response)
    returnValue((response, content))
コード例 #12
0
ファイル: intents.py プロジェクト: pratikmallya/otter
def perform_get_scaling_group_info(log, store, dispatcher, intent):
    """
    Perform :obj:`GetScalingGroupInfo`.

    :param log: bound log
    :param IScalingGroupCollection store: collection of groups
    :param dispatcher: dispatcher provided by perform
    :param GetScalingGroupInfo intent: the intent
    """
    log = merge_effectful_fields(dispatcher, log)
    group = store.get_scaling_group(log, intent.tenant_id, intent.group_id)
    manifest = yield group.view_manifest(with_policies=False,
                                         with_webhooks=False,
                                         get_deleting=True)
    returnValue((group, manifest))
コード例 #13
0
ファイル: intents.py プロジェクト: manishtomar/otter
def perform_get_scaling_group_info(log, store, dispatcher, intent):
    """
    Perform :obj:`GetScalingGroupInfo`.

    :param log: bound log
    :param IScalingGroupCollection store: collection of groups
    :param dispatcher: dispatcher provided by perform
    :param GetScalingGroupInfo intent: the intent
    """
    log = merge_effectful_fields(dispatcher, log)
    group = store.get_scaling_group(log, intent.tenant_id, intent.group_id)
    manifest = yield group.view_manifest(with_policies=False,
                                         with_webhooks=False,
                                         get_deleting=True)
    returnValue((group, manifest))