forked from CGM_Public/pretix_original
66 lines
3.2 KiB
Python
66 lines
3.2 KiB
Python
import datetime
|
|
|
|
from tests.base import SoupTest, extract_form_fields
|
|
|
|
from pretix.base.models import (
|
|
Event, EventPermission, Organizer, OrganizerPermission, User,
|
|
)
|
|
|
|
|
|
class EventsTest(SoupTest):
|
|
|
|
def setUp(self):
|
|
super().setUp()
|
|
self.user = User.objects.create_user('dummy@dummy.dummy', 'dummy')
|
|
self.orga1 = Organizer.objects.create(name='CCC', slug='ccc')
|
|
self.orga2 = Organizer.objects.create(name='MRM', slug='mrm')
|
|
self.event1 = Event.objects.create(
|
|
organizer=self.orga1, name='30C3', slug='30c3',
|
|
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc),
|
|
)
|
|
self.event2 = Event.objects.create(
|
|
organizer=self.orga1, name='31C3', slug='31c3',
|
|
date_from=datetime.datetime(2014, 12, 26, tzinfo=datetime.timezone.utc),
|
|
)
|
|
self.event3 = Event.objects.create(
|
|
organizer=self.orga2, name='MRMCD14', slug='mrmcd14',
|
|
date_from=datetime.datetime(2014, 9, 5, tzinfo=datetime.timezone.utc),
|
|
)
|
|
OrganizerPermission.objects.create(organizer=self.orga1, user=self.user)
|
|
EventPermission.objects.create(event=self.event1, user=self.user, can_change_items=True,
|
|
can_change_settings=True)
|
|
self.client.login(email='dummy@dummy.dummy', password='dummy')
|
|
|
|
def test_event_list(self):
|
|
doc = self.get_doc('/control/events/')
|
|
tabletext = doc.select("#page-wrapper .table")[0].text
|
|
self.assertIn("30C3", tabletext)
|
|
self.assertNotIn("31C3", tabletext)
|
|
self.assertNotIn("MRMCD14", tabletext)
|
|
|
|
def test_settings(self):
|
|
doc = self.get_doc('/control/event/%s/%s/settings/' % (self.orga1.slug, self.event1.slug))
|
|
doc.select("[name=date_to]")[0]['value'] = "2013-12-30 17:00:00"
|
|
doc.select("[name=settings-max_items_per_order]")[0]['value'] = "12"
|
|
print(extract_form_fields(doc.select('.container-fluid form')[0]))
|
|
|
|
doc = self.post_doc('/control/event/%s/%s/settings/' % (self.orga1.slug, self.event1.slug),
|
|
extract_form_fields(doc.select('.container-fluid form')[0]))
|
|
print(doc)
|
|
assert len(doc.select(".alert-success")) > 0
|
|
assert doc.select("[name=date_to]")[0]['value'] == "2013-12-30 17:00:00"
|
|
assert doc.select("[name=settings-max_items_per_order]")[0]['value'] == "12"
|
|
|
|
def test_plugins(self):
|
|
doc = self.get_doc('/control/event/%s/%s/settings/plugins' % (self.orga1.slug, self.event1.slug))
|
|
self.assertIn("Bank transfer", doc.select(".form-plugins")[0].text)
|
|
self.assertIn("Enable", doc.select("[name=plugin:pretix.plugins.banktransfer]")[0].text)
|
|
|
|
doc = self.post_doc('/control/event/%s/%s/settings/plugins' % (self.orga1.slug, self.event1.slug),
|
|
{'plugin:pretix.plugins.banktransfer': 'enable'})
|
|
self.assertIn("Disable", doc.select("[name=plugin:pretix.plugins.banktransfer]")[0].text)
|
|
|
|
doc = self.post_doc('/control/event/%s/%s/settings/plugins' % (self.orga1.slug, self.event1.slug),
|
|
{'plugin:pretix.plugins.banktransfer': 'disable'})
|
|
self.assertIn("Enable", doc.select("[name=plugin:pretix.plugins.banktransfer]")[0].text)
|