mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Merge pull request #123 from apollo13/ticket18381
Fixed #18381 -- Stopped escaping object ids when passing them to the contenttypes.shortcut view. Thanks apollo13 for the patch and dhepper for the review.
This commit is contained in:
@@ -1402,7 +1402,7 @@ class AdminViewStringPrimaryKeyTest(TestCase):
|
||||
|
||||
def test_url_conflicts_with_add(self):
|
||||
"A model with a primary key that ends with add should be visible"
|
||||
add_model = ModelWithStringPrimaryKey(id="i have something to add")
|
||||
add_model = ModelWithStringPrimaryKey(pk="i have something to add")
|
||||
add_model.save()
|
||||
response = self.client.get('/test_admin/admin/admin_views/modelwithstringprimarykey/%s/' % quote(add_model.pk))
|
||||
should_contain = """<h1>Change model with string primary key</h1>"""
|
||||
@@ -1410,7 +1410,7 @@ class AdminViewStringPrimaryKeyTest(TestCase):
|
||||
|
||||
def test_url_conflicts_with_delete(self):
|
||||
"A model with a primary key that ends with delete should be visible"
|
||||
delete_model = ModelWithStringPrimaryKey(id="delete")
|
||||
delete_model = ModelWithStringPrimaryKey(pk="delete")
|
||||
delete_model.save()
|
||||
response = self.client.get('/test_admin/admin/admin_views/modelwithstringprimarykey/%s/' % quote(delete_model.pk))
|
||||
should_contain = """<h1>Change model with string primary key</h1>"""
|
||||
@@ -1418,12 +1418,20 @@ class AdminViewStringPrimaryKeyTest(TestCase):
|
||||
|
||||
def test_url_conflicts_with_history(self):
|
||||
"A model with a primary key that ends with history should be visible"
|
||||
history_model = ModelWithStringPrimaryKey(id="history")
|
||||
history_model = ModelWithStringPrimaryKey(pk="history")
|
||||
history_model.save()
|
||||
response = self.client.get('/test_admin/admin/admin_views/modelwithstringprimarykey/%s/' % quote(history_model.pk))
|
||||
should_contain = """<h1>Change model with string primary key</h1>"""
|
||||
self.assertContains(response, should_contain)
|
||||
|
||||
def test_shortcut_view_with_escaping(self):
|
||||
"'View on site should' work properly with char fields"
|
||||
model = ModelWithStringPrimaryKey(pk='abc_123')
|
||||
model.save()
|
||||
response = self.client.get('/test_admin/admin/admin_views/modelwithstringprimarykey/%s/' % quote(model.pk))
|
||||
should_contain = '/%s/" class="viewsitelink">' % model.pk
|
||||
self.assertContains(response, should_contain)
|
||||
|
||||
|
||||
@override_settings(PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
|
||||
class SecureViewTests(TestCase):
|
||||
|
||||
Reference in New Issue
Block a user