mirror of
https://github.com/django/django.git
synced 2025-10-23 21:59:11 +00:00
Reorganized text db function tests.
This commit is contained in:
43
tests/db_functions/text/test_upper.py
Normal file
43
tests/db_functions/text/test_upper.py
Normal file
@@ -0,0 +1,43 @@
|
||||
from django.db.models import CharField
|
||||
from django.db.models.functions import Upper
|
||||
from django.test import TestCase
|
||||
|
||||
from ..models import Author
|
||||
|
||||
|
||||
class UpperTests(TestCase):
|
||||
|
||||
def test_basic(self):
|
||||
Author.objects.create(name='John Smith', alias='smithj')
|
||||
Author.objects.create(name='Rhonda')
|
||||
authors = Author.objects.annotate(upper_name=Upper('name'))
|
||||
self.assertQuerysetEqual(
|
||||
authors.order_by('name'), [
|
||||
'JOHN SMITH',
|
||||
'RHONDA',
|
||||
],
|
||||
lambda a: a.upper_name
|
||||
)
|
||||
Author.objects.update(name=Upper('name'))
|
||||
self.assertQuerysetEqual(
|
||||
authors.order_by('name'), [
|
||||
('JOHN SMITH', 'JOHN SMITH'),
|
||||
('RHONDA', 'RHONDA'),
|
||||
],
|
||||
lambda a: (a.upper_name, a.name)
|
||||
)
|
||||
|
||||
def test_transform(self):
|
||||
try:
|
||||
CharField.register_lookup(Upper)
|
||||
Author.objects.create(name='John Smith', alias='smithj')
|
||||
Author.objects.create(name='Rhonda')
|
||||
authors = Author.objects.filter(name__upper__exact='JOHN SMITH')
|
||||
self.assertQuerysetEqual(
|
||||
authors.order_by('name'), [
|
||||
'John Smith',
|
||||
],
|
||||
lambda a: a.name
|
||||
)
|
||||
finally:
|
||||
CharField._unregister_lookup(Upper)
|
||||
Reference in New Issue
Block a user