forked from CGM_Public/pretix_original
Refs #96 -- Completely removed local users
This commit is contained in:
@@ -9,14 +9,14 @@ from pretix.base.models import User
|
||||
class UserSettingsTest(EventTestMixin, BrowserTest):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.user = User.objects.create_global_user('dummy@dummy.dummy', 'dummy')
|
||||
self.user = User.objects.create_user('dummy@dummy.dummy', 'dummy')
|
||||
self.driver.implicitly_wait(10)
|
||||
self.driver.get('%s/%s/%s/login' % (self.live_server_url, self.orga.slug, self.event.slug))
|
||||
# open the login accordion
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('a[href*=loginForm]'))
|
||||
time.sleep(1)
|
||||
# enter login details
|
||||
self.driver.find_element_by_css_selector('#loginForm input[name=username]').send_keys('dummy@dummy.dummy')
|
||||
self.driver.find_element_by_css_selector('#loginForm input[name=email]').send_keys('dummy@dummy.dummy')
|
||||
self.driver.find_element_by_css_selector('#loginForm input[name=password]').send_keys('dummy')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('#loginForm button.btn-primary'))
|
||||
self.driver.find_element_by_partial_link_text('Your account')
|
||||
@@ -51,19 +51,8 @@ class UserSettingsTest(EventTestMixin, BrowserTest):
|
||||
self.user = User.objects.get(pk=self.user.pk)
|
||||
assert self.user.email == 'foo@example.com'
|
||||
|
||||
def test_change_email_allow_local_duplicates(self):
|
||||
User.objects.create_local_user(event=self.event, username='test', email='foo@example.com', password='foo')
|
||||
self.driver.find_element_by_name("email").clear()
|
||||
self.driver.find_element_by_name("email").send_keys("foo@example.com")
|
||||
self.driver.find_element_by_name("old_pw").clear()
|
||||
self.driver.find_element_by_name("old_pw").send_keys("dummy")
|
||||
self.scroll_and_click(self.driver.find_element_by_class_name('btn-save'))
|
||||
self.driver.find_element_by_class_name("alert-success")
|
||||
self.user = User.objects.get(pk=self.user.pk)
|
||||
assert self.user.email == 'foo@example.com'
|
||||
|
||||
def test_change_email_no_global_duplicates(self):
|
||||
User.objects.create_global_user('foo@example.com', 'foo')
|
||||
def test_change_email_no_duplicates(self):
|
||||
User.objects.create_user('foo@example.com', 'foo')
|
||||
self.driver.find_element_by_name("email").clear()
|
||||
self.driver.find_element_by_name("email").send_keys("foo@example.com")
|
||||
self.driver.find_element_by_name("old_pw").clear()
|
||||
|
||||
@@ -22,7 +22,7 @@ class CartTestMixin:
|
||||
organizer=self.orga, name='30C3', slug='30c3',
|
||||
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc)
|
||||
)
|
||||
self.user = User.objects.create_local_user(self.event, 'demo', 'demo')
|
||||
self.user = User.objects.create_user('dummy@dummy.dummy', 'demo')
|
||||
self.category = ItemCategory.objects.create(event=self.event, name="Everything", position=0)
|
||||
self.quota_shirts = Quota.objects.create(event=self.event, name='Shirts', size=2)
|
||||
self.shirt = Item.objects.create(event=self.event, name='T-Shirt', category=self.category, default_price=12)
|
||||
@@ -51,7 +51,7 @@ class CartBrowserTest(CartTestMixin, BrowserTest):
|
||||
self.driver.find_element_by_css_selector('input[type=number][name=item_%s]' % self.ticket.identity).send_keys('1')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('.checkout-button-row button'))
|
||||
# should redirect to login page
|
||||
self.driver.find_element_by_name('username')
|
||||
self.driver.find_element_by_name('email')
|
||||
|
||||
def test_simple_login(self):
|
||||
self.driver.get('%s/%s/%s/' % (self.live_server_url, self.orga.slug, self.event.slug))
|
||||
@@ -63,44 +63,26 @@ class CartBrowserTest(CartTestMixin, BrowserTest):
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('a[href*=loginForm]'))
|
||||
time.sleep(1)
|
||||
# enter login details
|
||||
self.driver.find_element_by_css_selector('#loginForm input[name=username]').send_keys('demo')
|
||||
self.driver.find_element_by_css_selector('#loginForm input[name=email]').send_keys('dummy@dummy.dummy')
|
||||
self.driver.find_element_by_css_selector('#loginForm input[name=password]').send_keys('demo')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('#loginForm button.btn-primary'))
|
||||
# should display our ticket
|
||||
self.assertIn('Early-bird', self.driver.find_element_by_css_selector('.cart-row:first-child').text)
|
||||
|
||||
def test_local_registration(self):
|
||||
def test_registration(self):
|
||||
self.driver.get('%s/%s/%s/' % (self.live_server_url, self.orga.slug, self.event.slug))
|
||||
# add the entry ticket to cart
|
||||
self.driver.find_element_by_css_selector('input[type=number][name=item_%s]' % self.ticket.identity).send_keys('1')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('.checkout-button-row button'))
|
||||
# should redirect to login page
|
||||
# open the login accordion
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('a[href*=localRegistrationForm]'))
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('a[href*=registrationForm]'))
|
||||
time.sleep(1)
|
||||
# enter login details
|
||||
self.driver.find_element_by_css_selector('#localRegistrationForm input[name=username]').send_keys('demo2')
|
||||
self.driver.find_element_by_css_selector('#localRegistrationForm input[name=email]').send_keys('demo@demo.demo')
|
||||
self.driver.find_element_by_css_selector('#localRegistrationForm input[name=password]').send_keys('demo')
|
||||
self.driver.find_element_by_css_selector('#localRegistrationForm input[name=password_repeat]').send_keys('demo')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('#localRegistrationForm button.btn-primary'))
|
||||
# should display our ticket
|
||||
self.assertIn('Early-bird', self.driver.find_element_by_css_selector('.cart-row:first-child').text)
|
||||
|
||||
def test_global_registration(self):
|
||||
self.driver.get('%s/%s/%s/' % (self.live_server_url, self.orga.slug, self.event.slug))
|
||||
# add the entry ticket to cart
|
||||
self.driver.find_element_by_css_selector('input[type=number][name=item_%s]' % self.ticket.identity).send_keys('1')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('.checkout-button-row button'))
|
||||
# should redirect to login page
|
||||
# open the login accordion
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('a[href*=globalRegistrationForm]'))
|
||||
time.sleep(1)
|
||||
# enter login details
|
||||
self.driver.find_element_by_css_selector('#globalRegistrationForm input[name=email]').send_keys('demo@example.com')
|
||||
self.driver.find_element_by_css_selector('#globalRegistrationForm input[name=password]').send_keys('demo')
|
||||
self.driver.find_element_by_css_selector('#globalRegistrationForm input[name=password_repeat]').send_keys('demo')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('#globalRegistrationForm button.btn-primary'))
|
||||
self.driver.find_element_by_css_selector('#registrationForm input[name=email]').send_keys('demo@example.com')
|
||||
self.driver.find_element_by_css_selector('#registrationForm input[name=password]').send_keys('demo')
|
||||
self.driver.find_element_by_css_selector('#registrationForm input[name=password_repeat]').send_keys('demo')
|
||||
self.scroll_and_click(self.driver.find_element_by_css_selector('#registrationForm button.btn-primary'))
|
||||
# should display our ticket
|
||||
self.assertIn('Early-bird', self.driver.find_element_by_css_selector('.cart-row:first-child').text)
|
||||
|
||||
@@ -109,7 +91,7 @@ class CartTest(CartTestMixin, TestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.assertTrue(self.client.login(username='demo@%s.event.pretix' % self.event.identity, password='demo'))
|
||||
self.assertTrue(self.client.login(email='dummy@dummy.dummy', password='demo'))
|
||||
|
||||
def test_simple(self):
|
||||
response = self.client.post('/%s/%s/cart/add' % (self.orga.slug, self.event.slug), {
|
||||
|
||||
@@ -21,13 +21,13 @@ class CheckoutTestCase(TestCase):
|
||||
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc),
|
||||
plugins='pretix.plugins.stripe,pretix.plugins.banktransfer'
|
||||
)
|
||||
self.user = User.objects.create_local_user(self.event, 'demo', 'demo')
|
||||
self.user = User.objects.create_user('dummy@dummy.dummy', 'demo')
|
||||
self.category = ItemCategory.objects.create(event=self.event, name="Everything", position=0)
|
||||
self.quota_tickets = Quota.objects.create(event=self.event, name='Tickets', size=5)
|
||||
self.ticket = Item.objects.create(event=self.event, name='Early-bird ticket',
|
||||
category=self.category, default_price=23, admission=True)
|
||||
self.quota_tickets.items.add(self.ticket)
|
||||
self.assertTrue(self.client.login(username='demo@%s.event.pretix' % self.event.identity, password='demo'))
|
||||
self.assertTrue(self.client.login(email='dummy@dummy.dummy', password='demo'))
|
||||
self.event.settings.set('attendee_names_asked', False)
|
||||
self.event.settings.set('payment_banktransfer__enabled', True)
|
||||
|
||||
|
||||
@@ -144,52 +144,40 @@ class LoginTest(EventTestMixin, TestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.local_user = User.objects.create_local_user(self.event, 'demo', 'foo')
|
||||
self.global_user = User.objects.create_global_user('demo@demo.dummy', 'demo')
|
||||
self.user = User.objects.create_user('demo@demo.dummy', 'demo')
|
||||
|
||||
def test_login_invalid(self):
|
||||
response = self.client.post(
|
||||
'/%s/%s/login' % (self.orga.slug, self.event.slug),
|
||||
{
|
||||
'form': 'login',
|
||||
'username': 'demo',
|
||||
'email': 'demo@demo.foo',
|
||||
'password': 'bar'
|
||||
}
|
||||
)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertIn('alert-danger', response.rendered_content)
|
||||
|
||||
def test_login_local(self):
|
||||
def test_login_valid(self):
|
||||
response = self.client.post(
|
||||
'/%s/%s/login' % (self.orga.slug, self.event.slug),
|
||||
{
|
||||
'form': 'login',
|
||||
'username': 'demo',
|
||||
'password': 'foo'
|
||||
}
|
||||
)
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
def test_login_global(self):
|
||||
response = self.client.post(
|
||||
'/%s/%s/login' % (self.orga.slug, self.event.slug),
|
||||
{
|
||||
'form': 'login',
|
||||
'username': 'demo@demo.dummy',
|
||||
'email': 'demo@demo.dummy',
|
||||
'password': 'demo'
|
||||
}
|
||||
)
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
def test_login_already_logged_in(self):
|
||||
self.assertTrue(self.client.login(username='demo@%s.event.pretix' % self.event.identity, password='foo'))
|
||||
self.assertTrue(self.client.login(email='demo@demo.dummy', password='demo'))
|
||||
response = self.client.get(
|
||||
'/%s/%s/login' % (self.orga.slug, self.event.slug),
|
||||
)
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
def test_logout(self):
|
||||
self.assertTrue(self.client.login(username='demo@%s.event.pretix' % self.event.identity, password='foo'))
|
||||
self.assertTrue(self.client.login(email='demo@demo.dummy', password='demo'))
|
||||
response = self.client.get(
|
||||
'/%s/%s/logout' % (self.orga.slug, self.event.slug),
|
||||
)
|
||||
|
||||
@@ -23,9 +23,9 @@ class OrdersTest(TestCase):
|
||||
)
|
||||
self.event.settings.set('payment_banktransfer__enabled', True)
|
||||
self.event.settings.set('ticketoutput_testdummy__enabled', True)
|
||||
self.user = User.objects.create_local_user(self.event, 'demo', 'foo')
|
||||
self.user2 = User.objects.create_local_user(self.event, 'bar', 'foo')
|
||||
self.assertTrue(self.client.login(username='demo@%s.event.pretix' % self.event.identity, password='foo'))
|
||||
self.user = User.objects.create_user('dummy@dummy.dummy', 'foo')
|
||||
self.user2 = User.objects.create_user('bar@dummy.dummy', 'foo')
|
||||
self.assertTrue(self.client.login(email='dummy@dummy.dummy', password='foo'))
|
||||
|
||||
self.category = ItemCategory.objects.create(event=self.event, name="Everything", position=0)
|
||||
self.quota_shirts = Quota.objects.create(event=self.event, name='Shirts', size=2)
|
||||
|
||||
Reference in New Issue
Block a user