mirror of
https://github.com/pretix/pretix.git
synced 2026-05-03 14:54:04 +00:00
Time machine mode [Z#23129725] (#3961)
Allows organizers to test their shop as if it were a different date and time. Implemented using a time_machine_now() function which is used instead of regular now(), which can overlay the real date time with a value from a ContextVar, assigned from a session value in EventMiddleware. For more information, see doc/development/implementation/timemachine.rst --------- Co-authored-by: Richard Schreiber <schreiber@rami.io> Co-authored-by: Raphael Michel <michel@rami.io>
This commit is contained in:
@@ -41,6 +41,8 @@ def env():
|
||||
|
||||
TEMPLATE_FRONT_PAGE = Template("{% load eventurl %} {% eventurl event 'presale:event.index' %}")
|
||||
TEMPLATE_KWARGS = Template("{% load eventurl %} {% eventurl event 'presale:event.checkout' step='payment' %}")
|
||||
TEMPLATE_ABSEVENTURL = Template("{% load eventurl %} {% abseventurl event 'presale:event.checkout' step='payment' %}")
|
||||
TEMPLATE_ABSMAINURL = Template("{% load eventurl %} {% absmainurl 'control:event.settings' organizer=event.organizer.slug event=event.slug %}")
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
@@ -77,6 +79,40 @@ def test_event_custom_domain_kwargs(env):
|
||||
assert rendered == 'http://foobar/2015/checkout/payment/'
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_abseventurl_event_main_domain(env):
|
||||
rendered = TEMPLATE_ABSEVENTURL.render(Context({
|
||||
'event': env[1]
|
||||
})).strip()
|
||||
assert rendered == 'http://example.com/mrmcd/2015/checkout/payment/'
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_abseventurl_event_custom_domain(env):
|
||||
KnownDomain.objects.create(domainname='foobar', organizer=env[0])
|
||||
rendered = TEMPLATE_ABSEVENTURL.render(Context({
|
||||
'event': env[1]
|
||||
})).strip()
|
||||
assert rendered == 'http://foobar/2015/checkout/payment/'
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_absmainurl_main_domain(env):
|
||||
rendered = TEMPLATE_ABSMAINURL.render(Context({
|
||||
'event': env[1]
|
||||
})).strip()
|
||||
assert rendered == 'http://example.com/control/event/mrmcd/2015/settings/'
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_absmainurl_custom_domain(env):
|
||||
KnownDomain.objects.create(domainname='foobar', organizer=env[0])
|
||||
rendered = TEMPLATE_ABSMAINURL.render(Context({
|
||||
'event': env[1]
|
||||
})).strip()
|
||||
assert rendered == 'http://example.com/control/event/mrmcd/2015/settings/'
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_only_kwargs(env):
|
||||
with pytest.raises(TemplateSyntaxError):
|
||||
|
||||
Reference in New Issue
Block a user