Пример #1
0
    def get_for_event(cls, event_content_object, event_type):
        action = event_context.get_event_action(event_type=event_type)
        if action in [
                event_actions.FAILED, event_actions.STOPPED,
                event_actions.DELETED
        ]:
            return cls.RED
        if action in [event_actions.SUCCEEDED]:
            return cls.GREEN

        if action != event_actions.NEW_STATUS:
            return cls.GREY

        if event_content_object.last_status in [
                StatusOptions.FINISHED, StatusOptions.SKIPPED
        ]:
            return cls.GREEN

        if event_content_object.last_status == StatusOptions.DONE:
            return cls.GREY

        if event_content_object.last_status == StatusOptions.CREATED:
            return cls.BLUE

        return cls.YELLOW
Пример #2
0
    def get_event_action(cls):
        """Return the second part of the event_type

        e.g.

        >>> Event.event_type = 'experiment.deleted'
        >>> Event.get_event_action() == 'deleted'
        """
        if not cls.actor:
            return None
        return event_context.get_event_action(cls.event_type)
Пример #3
0
    def test_serialize_one_with_unique_name(self):
        obj = ActivityLog.objects.last()
        data = self.serializer_class(obj).data

        assert set(data.keys()) == self.expected_keys
        assert data.pop('object_name') == obj.content_object.unique_name
        assert data.pop('actor') == obj.actor.username
        assert data.pop('event_action') == event_context.get_event_action(obj.event_type)
        assert data.pop('event_subject') == event_context.get_event_subject(obj.event_type)
        data.pop('created_at')

        for k, v in data.items():
            assert getattr(obj, k) == v
Пример #4
0
 def get_event_action(self, obj):
     return event_context.get_event_action(event_type=obj.event_type)
Пример #5
0
 def test_get_event_action(self):
     assert event_context.get_event_action('foo.bar') == 'bar'
     assert event_context.get_event_action('foo.bar.moo') == 'bar'
Пример #6
0
 def get_event_action(self, obj: 'ActivityLog') -> str:
     return event_context.get_event_action(event_type=obj.event_type)