tests: share login() and admin_user() (#32876)

This commit is contained in:
Benjamin Dauvergne 2019-05-09 19:43:27 +02:00
parent 486aa8bec6
commit 43a5061f5f
4 changed files with 13 additions and 38 deletions

View File

@ -2,6 +2,8 @@ import pytest
import django_webtest
from django.contrib.auth.models import User
@pytest.fixture
def app(request):
@ -9,3 +11,8 @@ def app(request):
wtm._patch_settings()
request.addfinalizer(wtm._unpatch_settings)
return django_webtest.DjangoTestApp()
@pytest.fixture
def admin_user(db):
return User.objects.create_superuser('admin', email=None, password='password')

View File

@ -6,19 +6,11 @@ from django.utils import timezone
from hobo.environment.models import AVAILABLE_SERVICES, Combo, Passerelle, ServiceBase
from test_manager import login
pytestmark = pytest.mark.django_db
def login(app, username='admin', password='password'):
login_page = app.get('/login/')
login_form = login_page.forms[0]
login_form['username'] = username
login_form['password'] = password
resp = login_form.submit()
assert resp.status_int == 302
return app
def test_service_id():
for service in AVAILABLE_SERVICES:
assert service.Extra.service_id

View File

@ -15,23 +15,13 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.contrib.auth.models import User
import pytest
from hobo.profile import models
from hobo.environment.models import Authentic
@pytest.fixture
def admin_user(db):
try:
user = User.objects.get(username='admin')
except User.DoesNotExist:
user = User.objects.create_superuser('admin', email=None, password='admin')
return user
def login(app, username='admin', password='admin'):
def login(app, username='admin', password='password'):
login_page = app.get('/login/')
login_form = login_page.forms[0]
login_form['username'] = username

View File

@ -13,6 +13,8 @@ from django.test import override_settings
from hobo.environment.models import Wcs, Combo, Fargo
from hobo.wsgi import application
from test_manager import login
pytestmark = pytest.mark.django_db
CONFIG = {'URL': 'https://matomo.test',
@ -69,6 +71,7 @@ JAVASCRIPT_TAG = """<?xml version="1.0" encoding="utf-8" ?>
PING_SUCCESS = '{"status":"success","tracked":1,"invalid":0}'
PING_ERROR = '{"status":"not success"}'
def requests_post_mocked_replies(contents):
"""buid an iterator for mock's side_effect parameter"""
responses = []
@ -84,23 +87,6 @@ def requests_post_mocked_replies(contents):
responses.append(response)
return responses
@pytest.fixture
def admin_user():
try:
user = User.objects.get(username='admin')
except User.DoesNotExist:
user = User.objects.create_superuser('admin', email=None, password='admin')
return user
def login(app, username='admin', password='admin'):
login_page = app.get('/login/')
login_form = login_page.forms[0]
login_form['username'] = username
login_form['password'] = password
resp = login_form.submit()
assert resp.status_int == 302
return app
def test_unlogged_access():
# connect while not being logged in
app = TestApp(application)