25 lines
722 B
Python
25 lines
722 B
Python
from django.db.models import Count, Func
|
|
from django.test import SimpleTestCase
|
|
from django.utils.deprecation import RemovedInDjango40Warning
|
|
|
|
from .models import Employee
|
|
|
|
|
|
class MissingAliasFunc(Func):
|
|
template = '1'
|
|
|
|
def get_group_by_cols(self):
|
|
return []
|
|
|
|
|
|
class GetGroupByColsTest(SimpleTestCase):
|
|
def test_missing_alias(self):
|
|
msg = (
|
|
'`alias=None` must be added to the signature of '
|
|
'expressions.test_deprecation.MissingAliasFunc.get_group_by_cols().'
|
|
)
|
|
with self.assertRaisesMessage(RemovedInDjango40Warning, msg):
|
|
Employee.objects.values(
|
|
one=MissingAliasFunc(),
|
|
).annotate(cnt=Count('company_ceo_set'))
|