height = 0 if self.pk is None else self.get_depth()
deepest_new_depth = (new_parent_depth + 1) + height
if deepest_new_depth > self.MAX_NESTING_DEPTH:
- raise ValidationError(_("Maximum nesting depth exceeded."))
+ raise ValidationError({"parent": _("Maximum nesting depth exceeded.")})
return super().clean()
temp.clean()
except ValidationError as e:
logger.debug("Tag parent validation failed: %s", e)
- raise serializers.ValidationError({"parent": _("Invalid parent tag.")})
+ raise e
return super().validate(attrs)
)
assert resp_fail.status_code == 400
assert "parent" in resp_fail.data
- assert "Invalid" in str(resp_fail.data["parent"])
+ assert "Maximum nesting depth exceeded" in str(resp_fail.data["parent"])
def test_max_depth_on_move_subtree(self):
a = Tag.objects.create(name="A2")
)
assert resp_fail.status_code == 400
assert "Maximum nesting depth exceeded" in str(
- resp_fail.data["non_field_errors"],
+ resp_fail.data["parent"],
)
# Moving X under C (depth 3) should be allowed (deepest becomes 5)