mirror of
https://github.com/ansible/awx.git
synced 2026-03-11 14:39:30 -02:30
add count to labels
This commit is contained in:
@@ -1685,7 +1685,7 @@ class JobOptionsSerializer(BaseSerializer):
|
|||||||
return res
|
return res
|
||||||
|
|
||||||
def _summary_field_labels(self, obj):
|
def _summary_field_labels(self, obj):
|
||||||
return [{'id': x.id, 'name': x.name} for x in obj.labels.all().order_by('name')[:10]]
|
return {'count': obj.labels.count(), 'results': [{'id': x.id, 'name': x.name} for x in obj.labels.all().order_by('name')[:10]]}
|
||||||
|
|
||||||
def get_summary_fields(self, obj):
|
def get_summary_fields(self, obj):
|
||||||
res = super(JobOptionsSerializer, self).get_summary_fields(obj)
|
res = super(JobOptionsSerializer, self).get_summary_fields(obj)
|
||||||
@@ -2384,7 +2384,6 @@ class NotificationSerializer(BaseSerializer):
|
|||||||
))
|
))
|
||||||
return res
|
return res
|
||||||
|
|
||||||
|
|
||||||
class LabelSerializer(BaseSerializer):
|
class LabelSerializer(BaseSerializer):
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|||||||
@@ -120,11 +120,11 @@ class TestJobTemplateSerializerGetSummaryFields(GetSummaryFieldsMixin):
|
|||||||
@mock.patch('awx.api.serializers.JobOptionsSerializer.get_related', lambda x,y: {})
|
@mock.patch('awx.api.serializers.JobOptionsSerializer.get_related', lambda x,y: {})
|
||||||
class TestJobSerializerGetRelated(GetRelatedMixin):
|
class TestJobSerializerGetRelated(GetRelatedMixin):
|
||||||
@pytest.mark.parametrize("related_resource_name", [
|
@pytest.mark.parametrize("related_resource_name", [
|
||||||
'job_events',
|
'job_events',
|
||||||
'job_plays',
|
'job_plays',
|
||||||
'job_tasks',
|
'job_tasks',
|
||||||
'relaunch',
|
'relaunch',
|
||||||
'labels',
|
'labels',
|
||||||
])
|
])
|
||||||
def test_get_related(self, mocker, job, related_resource_name):
|
def test_get_related(self, mocker, job, related_resource_name):
|
||||||
self._test_get_related(JobSerializer, job, 'jobs', related_resource_name)
|
self._test_get_related(JobSerializer, job, 'jobs', related_resource_name)
|
||||||
@@ -150,8 +150,8 @@ class TestJobOptionsSerializerGetSummaryFields(GetSummaryFieldsMixin):
|
|||||||
summary_labels = serializer._summary_field_labels(job_template)
|
summary_labels = serializer._summary_field_labels(job_template)
|
||||||
|
|
||||||
job_template.labels.all.order_by.assert_called_with('name')
|
job_template.labels.all.order_by.assert_called_with('name')
|
||||||
assert len(summary_labels) == 10
|
assert len(summary_labels['results']) == 10
|
||||||
assert summary_labels == [{'id': x.id, 'name': x.name} for x in labels[:10]]
|
assert summary_labels['results'] == [{'id': x.id, 'name': x.name} for x in labels[:10]]
|
||||||
|
|
||||||
def test_labels_exists(self, mocker, job_template):
|
def test_labels_exists(self, mocker, job_template):
|
||||||
self._test_get_summary_fields(JobOptionsSerializer, job_template, 'labels')
|
self._test_get_summary_fields(JobOptionsSerializer, job_template, 'labels')
|
||||||
|
|||||||
Reference in New Issue
Block a user