Example #1
0
    def test_event_to_transformer(self, config, mock_transformer, mock_session, mock_auth):
        event = UsageEvent("status", "name", "namespace", "deployment_id", "repository")
        reporter = UsageReporter(config, mock_transformer, mock_session, mock_auth)
        reporter._event_queue = [event]

        reporter()

        mock_transformer.assert_called_once_with(event.status, event.app_name, event.namespace, event.deployment_id,
                                                 event.repository)
Example #2
0
    def test_post_to_webhook(self, config, mock_transformer, mock_session, mock_auth):
        event = UsageEvent("status", "name", "namespace", "deployment_id", "repository")
        reporter = UsageReporter(config, mock_transformer, mock_session, mock_auth)
        reporter._event_queue = [event]

        payload = {"dummy": "payload"}
        mock_transformer.return_value = payload

        reporter()

        mock_session.post.assert_called_once_with(config.usage_reporting_endpoint, json=payload, auth=mock_auth)
Example #3
0
    def test_signal_to_event(self, config, mock_transformer, mock_session, mock_auth, app_spec, result, repository):
        reporter = UsageReporter(config, mock_transformer, mock_session, mock_auth)

        lifecycle_subject = Subject(uid=app_spec.uid, app_name=app_spec.name, namespace=app_spec.namespace,
                                    deployment_id=app_spec.deployment_id, repository=repository, labels=None, annotations=None)
        signal(DEPLOY_STATUS_CHANGED).send(status=result, subject=lifecycle_subject)

        event = reporter._event_queue.get_nowait()

        assert event.status == result.split("_")[-1].upper()
        assert event.app_name == app_spec.name
        assert event.namespace == app_spec.namespace
        assert event.deployment_id == app_spec.deployment_id
        assert event.repository == repository
Example #4
0
    def test_signal_to_event(self, config, mock_transformer, mock_session,
                             mock_auth, app_spec, signal_name, repository):
        reporter = UsageReporter(config, mock_transformer, mock_session,
                                 mock_auth)

        signal(signal_name).send(app_name=app_spec.name,
                                 namespace=app_spec.namespace,
                                 deployment_id=app_spec.deployment_id,
                                 repository=repository)

        event = reporter._event_queue.get_nowait()

        assert event.status == signal_name.split("_")[-1].upper()
        assert event.app_name == app_spec.name
        assert event.namespace == app_spec.namespace
        assert event.deployment_id == app_spec.deployment_id
        assert event.repository == repository