UPD: more/better tests.
This commit is contained in:
@@ -1,8 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import time
|
||||
from django.apps import apps
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.contrib.auth.models import Group
|
||||
from django.test import tag
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext
|
||||
@@ -14,6 +11,8 @@ from selenium.webdriver.support.ui import Select
|
||||
from dav_base.tests.generic import ScreenshotTestCase
|
||||
from dav_auth.tests.generic import SeleniumAuthMixin
|
||||
|
||||
from .generic import RoleMixin
|
||||
|
||||
TEST_TRAINER_EMAIL = 'trainer@localhost'
|
||||
TEST_PASSWORD = u'me||ön 2'
|
||||
TEST_EVENT_DATA_S = {
|
||||
@@ -109,27 +108,9 @@ TEST_EVENT_DATA_M = {
|
||||
|
||||
|
||||
@tag('screenshots', 'browser')
|
||||
class TestCase(SeleniumAuthMixin, ScreenshotTestCase):
|
||||
class TestCase(SeleniumAuthMixin, RoleMixin, ScreenshotTestCase):
|
||||
screenshot_prefix = 'dav_events-'
|
||||
|
||||
def create_user_for_role(self, role_name, first_name, last_name):
|
||||
group = Group(name=role_name)
|
||||
group.save()
|
||||
|
||||
user_model = get_user_model()
|
||||
email = '{}@localhost'.format(role_name)
|
||||
user_name = email
|
||||
password = TEST_PASSWORD
|
||||
user = user_model.objects.create_user(username=user_name, password=password, email=user_name,
|
||||
first_name=first_name, last_name=last_name)
|
||||
user.groups.add(group)
|
||||
|
||||
setting_name = 'groups_{}'.format(role_name)
|
||||
app_config = apps.get_app_config('dav_events')
|
||||
setattr(app_config.settings, setting_name, [role_name])
|
||||
|
||||
return user
|
||||
|
||||
def create_event(self, event_data, auth=False, screenshots=True):
|
||||
data = event_data
|
||||
c = self.selenium
|
||||
@@ -610,12 +591,19 @@ class TestCase(SeleniumAuthMixin, ScreenshotTestCase):
|
||||
def setUp(self):
|
||||
super(TestCase, self).setUp()
|
||||
|
||||
self.manager_super = self.create_user_for_role('manager_super', 'Manager Super', 'Tourenreferent')
|
||||
self.manager_w = self.create_user_for_role('manager_w', 'Manager W', 'BereichsleiterWandern')
|
||||
self.manager_s = self.create_user_for_role('manager_s', 'Manager S', 'BereichsleiterSki')
|
||||
self.publisher_print = self.create_user_for_role('publisher_print', 'Publisher Print', 'RedaktionPrint')
|
||||
self.publisher_web = self.create_user_for_role('publisher_web', 'Publisher Web', 'RedaktionWeb')
|
||||
self.publisher_facebook = self.create_user_for_role('publisher_facebook', 'Publisher Facebook', 'RedaktionFacebook')
|
||||
password = TEST_PASSWORD
|
||||
self.manager_super = self.create_user_for_role('manager_super', password,
|
||||
'Manager Super', 'Tourenreferent')
|
||||
self.manager_w = self.create_user_for_role('manager_w', password,
|
||||
'Manager W', 'BereichsleiterWandern')
|
||||
self.manager_s = self.create_user_for_role('manager_s', password,
|
||||
'Manager S', 'BereichsleiterSki')
|
||||
self.publisher_print = self.create_user_for_role('publisher_print', password,
|
||||
'Publisher Print', 'RedaktionPrint')
|
||||
self.publisher_web = self.create_user_for_role('publisher_web', password,
|
||||
'Publisher Web', 'RedaktionWeb')
|
||||
self.publisher_facebook = self.create_user_for_role('publisher_facebook', password,
|
||||
'Publisher Facebook', 'RedaktionFacebook')
|
||||
|
||||
def test_screenshots(self):
|
||||
#self.quit_selenium = False
|
||||
|
||||
Reference in New Issue
Block a user