13791 rename whitespace fix (#13793)

* Add test for bug #13791
https://github.com/netbox-community/netbox/issues/13791

* Fix #13791 by disabling striping on find and replace fields of BulkRenameForm
This commit is contained in:
Per von Zweigbergk 2023-09-18 14:33:29 +02:00 committed by GitHub
parent 2dfbd72f10
commit 79bf12a8fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 1 deletions

View File

@ -40,8 +40,11 @@ class BulkRenameForm(BootstrapMixin, forms.Form):
"""
An extendable form to be used for renaming objects in bulk.
"""
find = forms.CharField()
find = forms.CharField(
strip=False
)
replace = forms.CharField(
strip=False,
required=False
)
use_regex = forms.BooleanField(

View File

@ -3,6 +3,7 @@ from django.test import TestCase
from utilities.choices import ImportFormatChoices
from utilities.forms.bulk_import import BulkImportForm
from utilities.forms.forms import BulkRenameForm
from utilities.forms.utils import expand_alphanumeric_pattern, expand_ipaddress_pattern
@ -364,3 +365,16 @@ class ImportFormTest(TestCase):
{'a': '1', 'b': '2', 'c': '3'},
{'a': '4', 'b': '5', 'c': '6'},
])
class BulkRenameFormTest(TestCase):
def test_no_strip_whitespace(self):
# Tests to make sure Bulk Rename Form isn't stripping whitespaces
# See: https://github.com/netbox-community/netbox/issues/13791
form = BulkRenameForm(data={
"find": " hello ",
"replace": " world "
})
self.assertTrue(form.is_valid())
self.assertEqual(form.cleaned_data["find"], " hello ")
self.assertEqual(form.cleaned_data["replace"], " world ")