diff options
author | Adam Johnson <me@adamj.eu> | 2020-01-09 15:41:54 +0000 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-01-10 07:52:06 +0100 |
commit | 5166097d7c80cab757e44f2d02f3d148fbbc2ff6 (patch) | |
tree | 212330fa1fee4064945231b9523eb8cfa64a4b41 /tests/model_enums | |
parent | 4c1b401e8250f9f520b3c7dc369554477ce8b15a (diff) | |
download | django-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.py | 6 |
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' |