Added more tests for pretix.multidomain

This commit is contained in:
Raphael Michel
2015-10-18 17:28:12 +02:00
parent aa51aaf1c2
commit d21fa8392a
2 changed files with 41 additions and 1 deletions

View File

@@ -86,3 +86,12 @@ def test_cookie_domain_on_main_domain(env, client):
assert r.status_code == 200 assert r.status_code == 200
assert r.client.cookies['pretix_csrftoken']['domain'] == 'example.com' assert r.client.cookies['pretix_csrftoken']['domain'] == 'example.com'
assert r.client.cookies['pretix_session']['domain'] == 'example.com' assert r.client.cookies['pretix_session']['domain'] == 'example.com'
@pytest.mark.django_db
def test_with_forwarded_host(env, client):
settings.USE_X_FORWARDED_HOST = True
KnownDomain.objects.create(domainname='foobar', organizer=env[0])
r = client.get('/2015/', HTTP_X_FORWARDED_HOST='foobar')
assert r.status_code == 200
settings.USE_X_FORWARDED_HOST = False

View File

@@ -1,6 +1,7 @@
import pytest import pytest
from django.conf import settings from django.conf import settings
from django.template import Context, Template from django.core.urlresolvers import NoReverseMatch
from django.template import Context, Template, TemplateSyntaxError
from django.utils.timezone import now from django.utils.timezone import now
from pretix.base.models import Event, Organizer from pretix.base.models import Event, Organizer
@@ -54,3 +55,33 @@ def test_event_custom_domain_kwargs(env):
'event': env[1] 'event': env[1]
})).strip() })).strip()
assert rendered == 'http://foobar/2015/checkout/payment/' assert rendered == 'http://foobar/2015/checkout/payment/'
@pytest.mark.django_db
def test_only_kwargs(env):
with pytest.raises(TemplateSyntaxError):
Template("{% load eventurl %} {% eventurl event 'presale:event.checkout' step %}")
@pytest.mark.django_db
def test_invalid_url(env):
tpl = Template("{% load eventurl %} {% eventurl event 'presale:event.foo' %}")
with pytest.raises(NoReverseMatch):
tpl.render(Context({
'event': env[1]
})).strip()
@pytest.mark.django_db
def test_without_event(env):
with pytest.raises(TemplateSyntaxError):
Template("{% load eventurl %} {% eventurl 'presale:event.index' %}")
@pytest.mark.django_db
def test_save_as(env):
tpl = Template("{% load eventurl %} {% eventurl event 'presale:event.index' as u %}{{ u }}")
rendered = tpl.render(Context({
'event': env[1]
})).strip()
assert rendered == '/mrmcd/2015/'