Refs #22144 -- Added test for QuerySet.bulk_create() with long non-ASCII text.

This commit is contained in:
Mariusz Felisiak 2017-02-24 16:54:10 +01:00 committed by Tim Graham
parent c31e7ab5a4
commit dc811cf503
2 changed files with 11 additions and 0 deletions

View File

@ -14,6 +14,7 @@ except ImportError:
class Country(models.Model):
name = models.CharField(max_length=255)
iso_two_letter = models.CharField(max_length=2)
description = models.TextField()
class ProxyCountry(Country):

View File

@ -39,6 +39,16 @@ class BulkCreateTests(TestCase):
with self.assertNumQueries(1):
Country.objects.bulk_create(self.data)
@skipUnlessDBFeature('has_bulk_insert')
def test_long_non_ascii_text(self):
"""
Inserting non-ASCII values with a length in the range 2001 to 4000
characters, i.e. 4002 to 8000 bytes, must be set as a CLOB on Oracle
(#22144).
"""
Country.objects.bulk_create([Country(description='Ж' * 3000)])
self.assertEqual(Country.objects.count(), 1)
def test_multi_table_inheritance_unsupported(self):
expected_message = "Can't bulk create a multi-table inherited model"
with self.assertRaisesMessage(ValueError, expected_message):