diff --git a/openedx_learning/__init__.py b/openedx_learning/__init__.py index ade40e2ca..d59f3d1e7 100644 --- a/openedx_learning/__init__.py +++ b/openedx_learning/__init__.py @@ -1,4 +1,4 @@ """ Open edX Learning ("Learning Core"). """ -__version__ = "0.3.4" +__version__ = "0.3.5" diff --git a/openedx_tagging/core/tagging/rest_api/v1/views.py b/openedx_tagging/core/tagging/rest_api/v1/views.py index a531e5bc0..aa77bf643 100644 --- a/openedx_tagging/core/tagging/rest_api/v1/views.py +++ b/openedx_tagging/core/tagging/rest_api/v1/views.py @@ -294,7 +294,8 @@ def create_import(self, request: Request, **_kwargs) -> Response: @action(detail=True, url_path="tags/import", methods=["put"]) def update_import(self, request: Request, **_kwargs) -> Response: """ - Imports tags from the uploaded file to an already created taxonomy. + Imports tags from the uploaded file to an already created taxonomy, + overwriting any existing tags. """ body = TaxonomyImportBodySerializer(data=request.data) body.is_valid(raise_exception=True) @@ -304,7 +305,7 @@ def update_import(self, request: Request, **_kwargs) -> Response: taxonomy = self.get_object() try: - import_success = import_tags(taxonomy, file, parser_format) + import_success = import_tags(taxonomy, file, parser_format, replace=True) if import_success: serializer = self.get_serializer(taxonomy) diff --git a/tests/openedx_tagging/core/tagging/test_views.py b/tests/openedx_tagging/core/tagging/test_views.py index 2dd3593d3..882de3dfa 100644 --- a/tests/openedx_tagging/core/tagging/test_views.py +++ b/tests/openedx_tagging/core/tagging/test_views.py @@ -2230,10 +2230,9 @@ def test_import(self, file_format: str) -> None: url = TAXONOMY_TAGS_URL.format(pk=self.taxonomy.id) response = self.client.get(url) tags = response.data["results"] - all_tags = [{"value": tag.value} for tag in self.old_tags] + new_tags - assert len(tags) == len(all_tags) + assert len(tags) == len(new_tags) for i, tag in enumerate(tags): - assert tag["value"] == all_tags[i]["value"] + assert tag["value"] == new_tags[i]["value"] def test_import_no_file(self) -> None: """