Skip to content

Commit 8460459

Browse files
committed
chore: get_tags_query_set added to LanguageObjectTag
1 parent fcd5ac8 commit 8460459

File tree

2 files changed

+11
-15
lines changed

2 files changed

+11
-15
lines changed

openedx_tagging/core/tagging/system_defined_taxonomies/object_tags.py

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -125,19 +125,12 @@ class Meta:
125125
proxy = True
126126

127127
@classmethod
128-
def get_tags(cls, taxonomy: Taxonomy) -> List[Tag]:
129-
"""
130-
Returns a list of tags of the available languages.
131-
"""
132-
# TODO we need to overweite this
133-
# tags = super().get_tags()
134-
tags = taxonomy.tag_set.objects().all()
135-
result = []
136-
available_langs = cls.get_available_languages()
137-
for tag in tags:
138-
if tag.external_id in available_langs:
139-
result.append(tag)
140-
return result
128+
def get_tags_query_set(cls, taxonomy: Taxonomy) -> models.QuerySet:
129+
"""
130+
Returns a query set of available languages tags.
131+
"""
132+
available_langs = cls._get_available_languages()
133+
return taxonomy.tag_set.filter(external_id__in=available_langs)
141134

142135
@classmethod
143136
def _get_available_languages(cls) -> List[str]:
@@ -150,7 +143,6 @@ def _get_available_languages(cls) -> List[str]:
150143
langs.add(django_lang[0].split('-')[0])
151144
return langs
152145

153-
154146
def _check_tag(self):
155147
"""
156148
Validates if the language tag is on the available languages

tests/openedx_tagging/core/tagging/test_system_defined.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,6 @@ def test_get_available_languages(self):
184184
langs = LanguageObjectTag._get_available_languages()
185185
self.assertEqual(sorted(langs), self.expected_langs_ids)
186186

187-
188187
def test_is_valid(self):
189188
valid_object_tag = LanguageObjectTag(
190189
taxonomy=self.taxonomy,
@@ -226,3 +225,8 @@ def test_is_valid(self):
226225
check_object=True,
227226
check_tag=True,
228227
)
228+
229+
def test_get_tags_query_set(self):
230+
tags = LanguageObjectTag.get_tags_query_set(self.taxonomy)
231+
for tag in tags:
232+
self.assertIn(tag.value, self.expected_langs_values)

0 commit comments

Comments
 (0)