data: add true, false & null aliases to context (#82425)
gitea/combo/pipeline/head This commit looks good Details

This commit is contained in:
Yann Weber 2024-01-23 16:25:07 +01:00 committed by Yann Weber
parent c02a001384
commit 1e65e2ea49
2 changed files with 44 additions and 5 deletions

View File

@ -21,9 +21,13 @@ from combo.utils.cache import cache_during_request
def template_vars(request):
context_extras = {}
context_extras['debug'] = settings.DEBUG
context_extras['livereload_enabled'] = settings.LIVERELOAD_ENABLED
context_extras['pwa_settings'] = cache_during_request(PwaSettings.singleton)
context_extras = {
'debug': settings.DEBUG,
'livereload_enabled': settings.LIVERELOAD_ENABLED,
'pwa_settings': cache_during_request(PwaSettings.singleton),
'true': True,
'false': False,
'null': None,
}
context_extras.update(settings.TEMPLATE_VARS)
return context_extras

View File

@ -10,7 +10,7 @@ import pytest
from django.contrib.auth.models import AnonymousUser, Group, User
from django.core.files import File
from django.core.files.storage import default_storage
from django.template import Context, Template
from django.template import Context, RequestContext, Template
from django.test import override_settings
from django.test.client import RequestFactory
from django.utils.timezone import now
@ -23,6 +23,41 @@ from combo.profile.utils import get_user_from_name_id
pytestmark = pytest.mark.django_db
def test_templatevars_bool_and_none_aliases():
ctx = RequestContext(RequestFactory().get('/'))
t_true = Template('{% if var == true %}OK{% endif %}')
t_false = Template('{% if var == false %}OK{% endif %}')
t_null = Template('{% if var == null %}OK{% endif %}')
t_is_true = Template('{% if var is true %}OK{% endif %}')
t_is_false = Template('{% if var is false %}OK{% endif %}')
t_is_null = Template('{% if var is null %}OK{% endif %}')
ctx.update({'var': True})
assert t_true.render(ctx) == 'OK'
assert t_false.render(ctx) == ''
assert t_null.render(ctx) == ''
assert t_is_true.render(ctx) == 'OK'
assert t_is_false.render(ctx) == ''
assert t_is_null.render(ctx) == ''
ctx.update({'var': False})
assert t_true.render(ctx) == ''
assert t_false.render(ctx) == 'OK'
assert t_null.render(ctx) == ''
assert t_is_true.render(ctx) == ''
assert t_is_false.render(ctx) == 'OK'
assert t_is_null.render(ctx) == ''
ctx.update({'var': None})
assert t_true.render(ctx) == ''
assert t_false.render(ctx) == ''
assert t_null.render(ctx) == 'OK'
assert t_is_true.render(ctx) == ''
assert t_is_false.render(ctx) == ''
assert t_is_null.render(ctx) == 'OK'
def test_strptime():
t = Template('{{ someday|strptime:"%Y-%m-%d"|date:"Y" }}')
assert t.render(Context({'someday': '2015-04-15'})) == '2015'