summaryrefslogtreecommitdiff
path: root/tests/model_enums
diff options
context:
space:
mode:
authorAdam Johnson <me@adamj.eu>2020-01-09 15:41:54 +0000
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2020-01-10 07:52:06 +0100
commit5166097d7c80cab757e44f2d02f3d148fbbc2ff6 (patch)
tree212330fa1fee4064945231b9523eb8cfa64a4b41 /tests/model_enums
parent4c1b401e8250f9f520b3c7dc369554477ce8b15a (diff)
downloaddjango-5166097d7c80cab757e44f2d02f3d148fbbc2ff6.tar.gz
Fixed #31154 -- Added support for using enumeration types in templates.
Enumeration helpers are callables, so the template system tried to call them with no arguments. Thanks Rupert Baker for helping discover this.
Diffstat (limited to 'tests/model_enums')
-rw-r--r--tests/model_enums/tests.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/tests/model_enums/tests.py b/tests/model_enums/tests.py
index b9356479de..ffc199ce42 100644
--- a/tests/model_enums/tests.py
+++ b/tests/model_enums/tests.py
@@ -4,6 +4,7 @@ import ipaddress
import uuid
from django.db import models
+from django.template import Context, Template
from django.test import SimpleTestCase
from django.utils.functional import Promise
from django.utils.translation import gettext_lazy as _
@@ -149,6 +150,11 @@ class ChoicesTests(SimpleTestCase):
with self.subTest(member=member):
self.assertEqual(str(test[member.name]), str(member.value))
+ def test_templates(self):
+ template = Template('{{ Suit.DIAMOND.label }}|{{ Suit.DIAMOND.value }}')
+ output = template.render(Context({'Suit': Suit}))
+ self.assertEqual(output, 'Diamond|1')
+
class Separator(bytes, models.Choices):
FS = b'\x1c', 'File Separator'