Avoided using BinaryField unecessarily in tests.

Several database backends struggle with binary data. This change
minimizes the risk of unrelated tests failures when binary fields
trigger errors.
This commit is contained in:
Aymeric Augustin 2014-06-05 17:06:50 +02:00
parent 4fb50a9a82
commit 2e4bcb9b02
2 changed files with 7 additions and 4 deletions

View File

@ -64,7 +64,6 @@ class Post(models.Model):
class Reporter(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
raw_data = models.BinaryField()
def __str__(self):
return "%s %s" % (self.first_name, self.last_name)
@ -112,3 +111,7 @@ class ObjectReference(models.Model):
def __str__(self):
return str(self.obj_id)
class RawData(models.Model):
raw_data = models.BinaryField()

View File

@ -334,9 +334,9 @@ class LastExecutedQueryTest(TestCase):
"""
Test that last_executed_query() returns an Unicode string
"""
persons = models.Reporter.objects.filter(raw_data=b'\x00\x46 \xFE').extra(select={'föö': 1})
sql, params = persons.query.sql_with_params()
cursor = persons.query.get_compiler('default').execute_sql(CURSOR)
data = models.RawData.objects.filter(raw_data=b'\x00\x46 \xFE').extra(select={'föö': 1})
sql, params = data.query.sql_with_params()
cursor = data.query.get_compiler('default').execute_sql(CURSOR)
last_sql = cursor.db.ops.last_executed_query(cursor, sql, params)
self.assertIsInstance(last_sql, six.text_type)