Refs #22144 -- Added test for QuerySet.bulk_create() with long non-ASCII text.
This commit is contained in:
parent
c31e7ab5a4
commit
dc811cf503
|
@ -14,6 +14,7 @@ except ImportError:
|
||||||
class Country(models.Model):
|
class Country(models.Model):
|
||||||
name = models.CharField(max_length=255)
|
name = models.CharField(max_length=255)
|
||||||
iso_two_letter = models.CharField(max_length=2)
|
iso_two_letter = models.CharField(max_length=2)
|
||||||
|
description = models.TextField()
|
||||||
|
|
||||||
|
|
||||||
class ProxyCountry(Country):
|
class ProxyCountry(Country):
|
||||||
|
|
|
@ -39,6 +39,16 @@ class BulkCreateTests(TestCase):
|
||||||
with self.assertNumQueries(1):
|
with self.assertNumQueries(1):
|
||||||
Country.objects.bulk_create(self.data)
|
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):
|
def test_multi_table_inheritance_unsupported(self):
|
||||||
expected_message = "Can't bulk create a multi-table inherited model"
|
expected_message = "Can't bulk create a multi-table inherited model"
|
||||||
with self.assertRaisesMessage(ValueError, expected_message):
|
with self.assertRaisesMessage(ValueError, expected_message):
|
||||||
|
|
Loading…
Reference in New Issue