mirror of
https://github.com/pretix/pretix.git
synced 2026-08-07 10:17:49 +00:00
57 lines
3.0 KiB
Python
57 lines
3.0 KiB
Python
import datetime
|
|
from tixlbase.models import User, Organizer, Event, OrganizerPermission, EventPermission, ItemCategory
|
|
from tixlbase.tests import BrowserTest, on_platforms
|
|
|
|
|
|
@on_platforms()
|
|
class ItemsTest(BrowserTest):
|
|
|
|
def setUp(self):
|
|
super().setUp()
|
|
self.user = User.objects.create_user('dummy@dummy.dummy', '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),
|
|
)
|
|
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.driver.implicitly_wait(10)
|
|
self.driver.get('%s%s' % (self.live_server_url, '/control/login'))
|
|
username_input = self.driver.find_element_by_name("email")
|
|
username_input.send_keys('dummy@dummy.dummy')
|
|
password_input = self.driver.find_element_by_name("password")
|
|
password_input.send_keys('dummy')
|
|
self.driver.find_element_by_css_selector('button[type="submit"]').click()
|
|
self.driver.find_element_by_class_name("navbar-right")
|
|
|
|
def test_category_create(self):
|
|
self.driver.get('%s/control/event/%s/%s/categories/add' % (
|
|
self.live_server_url, self.orga1.slug, self.event1.slug
|
|
))
|
|
self.driver.find_element_by_name("name").send_keys('Entry tickets')
|
|
self.driver.find_element_by_class_name("btn-save").click()
|
|
self.driver.find_element_by_class_name("alert-success")
|
|
self.assertIn("Entry tickets", self.driver.find_element_by_css_selector(".container table").text)
|
|
|
|
def test_category_update(self):
|
|
c = ItemCategory.objects.create(event=self.event1, name="Entry tickets")
|
|
self.driver.get('%s/control/event/%s/%s/categories/%s/' % (
|
|
self.live_server_url, self.orga1.slug, self.event1.slug, c.identity
|
|
))
|
|
self.driver.find_element_by_name("name").send_keys('T-Shirts')
|
|
self.driver.find_element_by_class_name("btn-save").click()
|
|
self.driver.find_element_by_class_name("alert-success")
|
|
self.assertIn("T-Shirts", self.driver.find_element_by_css_selector(".container table").text)
|
|
|
|
def test_category_delete(self):
|
|
c = ItemCategory.objects.create(event=self.event1, name="Entry tickets")
|
|
self.driver.get('%s/control/event/%s/%s/categories/%s/delete' % (
|
|
self.live_server_url, self.orga1.slug, self.event1.slug, c.identity
|
|
))
|
|
self.driver.find_element_by_class_name("btn-danger").click()
|
|
self.driver.find_element_by_class_name("alert-success")
|
|
self.assertNotIn("Entry tickets", self.driver.find_element_by_css_selector(".container table").text)
|