本文整理汇总了Python中websauna.tests.utils.create_logged_in_user函数的典型用法代码示例。如果您正苦于以下问题:Python create_logged_in_user函数的具体用法?Python create_logged_in_user怎么用?Python create_logged_in_user使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了create_logged_in_user函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_context_sensitive_shell
def test_context_sensitive_shell(web_server, browser, dbsession, init):
"""See we can open a context sensitive shell in admin."""
if dbsession.bind.dialect.name == "sqlite":
pytest.skip("This fails with sqlite on Travis - a fact that doesn't make sense, but it does")
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
b.find_by_css("#btn-crud-shell").click()
# Ramping up shell takes some extended time
time.sleep(5)
# We succesfully exposed obj
assert b.is_text_present("[email protected]")
# File menu
b.find_by_css(".dropdown a")[0].click()
# Shutdown and Back to the home
assert b.is_element_visible_by_css("#shutdown")
b.find_by_css("#shutdown").click()
# There should be alert "Do you really wish to leave notebook?"
time.sleep(0.5)
alert = b.driver.switch_to_alert()
alert.accept()
# Back to home screen
assert b.is_element_visible_by_css("#nav-logout")
开发者ID:frispete,项目名称:websauna,代码行数:33,代码来源:test_admin.py
示例2: test_add_question
def test_add_question(browser: DriverAPI, registry, web_server, dbsession):
"""Adding questions should be succesful."""
b = browser
if b.driver.capabilities["browserName"] != "firefox":
# Fails at click and JavaScript modals for Chrome
pytest.skip("This test works only under Firefox WebDriver")
create_logged_in_user(dbsession, registry, web_server, browser, admin=True)
b.visit(web_server)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-question").click()
b.fill("question_text", "What is love")
b.find_by_css("#deformField2-date").click()
# Pick any date
b.find_by_css(".picker__day--infocus")[0].click()
time.sleep(0.8) # Give some time for the browser, next click fails on CI
b.find_by_css("#deformField2-time").click()
b.find_by_css(".picker__list-item")[0].click()
time.sleep(0.5) # Give some time for the browser, next click fails on CI
b.find_by_name("add").click()
assert b.is_element_present_by_css("#msg-item-added")
开发者ID:frispete,项目名称:websauna,代码行数:30,代码来源:test_autoform.py
示例3: test_edit_choice_question
def test_edit_choice_question(browser: DriverAPI, tutorial_req, web_server, dbsession):
"""Change choice's assigned question in edit."""
from .tutorial import Question
from .tutorial import Choice
with transaction.manager:
q = Question(question_text="What is love")
dbsession.add(q)
dbsession.flush()
q2 = Question(question_text="Who shot JFK")
dbsession.add(q2)
dbsession.flush()
q2_slug = uuid_to_slug(q2.uuid)
c = Choice(choice_text="Foobar", question=q)
dbsession.add(c)
dbsession.flush()
c_slug = uuid_to_slug(c.uuid)
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit("{}/admin/models/choice/{}/edit".format(web_server, c_slug))
b.select("question", q2_slug)
b.find_by_name("save").click()
assert b.is_element_present_by_css("#msg-changes-saved")
with transaction.manager:
c = dbsession.query(Choice).get(1)
assert c.question.uuid == slug_to_uuid(q2_slug)
开发者ID:rmoorman,项目名称:websauna,代码行数:33,代码来源:test_autoform.py
示例4: test_remove_user_from_group
def test_remove_user_from_group(web_server, init, browser, dbsession):
"""Remove users from assigned groups in admin."""
b = browser
from websauna.system.user.models import Group
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
# Create a group where we
with transaction.manager:
g = Group(name=GROUP_NAME)
dbsession.add(g)
u = get_user(dbsession)
u.groups.append(g)
dbsession.flush()
group_uuid = uuid_to_slug(g.uuid)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-list-user").click()
b.find_by_css(".crud-row-1 .btn-crud-listing-edit").click()
# Check the group checkbox. We could put some more specific classes for controls here.
b.find_by_css("input[type='checkbox'][value='{}']".format(group_uuid)).click()
b.find_by_name("save").click()
assert b.is_text_present("Changes saved")
# After removing we should no longer see the removed group name on user show page
assert not b.is_text_present(GROUP_NAME)
开发者ID:frispete,项目名称:websauna,代码行数:30,代码来源:test_groups.py
示例5: test_add_user
def test_add_user(browser, web_server, init, dbsession):
"""See that we can add new users."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-user").click()
# b.fill("username", "test2")
b.fill("email", "[email protected]")
b.fill("password", "secret")
b.fill("password-confirm", "secret")
b.find_by_name("add").click()
# TODO: Convert to CSS based test
assert b.is_element_present_by_css("#msg-item-added")
logout(web_server, b)
b.visit(web_server + "/login")
b.fill("username", "[email protected]")
b.fill("password", "secret")
b.find_by_name("login_email").click()
assert b.is_element_present_by_css("#msg-you-are-logged-in")
开发者ID:frispete,项目名称:websauna,代码行数:28,代码来源:test_user_admin.py
示例6: test_add_choice_question
def test_add_choice_question(browser: DriverAPI, tutorial_req, web_server, dbsession):
from .tutorial import Question
from .tutorial import Choice
with transaction.manager:
q = Question(question_text="What is love")
dbsession.add(q)
dbsession.flush()
question_uuid = uuid_to_slug(q.uuid)
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit(web_server)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-choice").click()
b.fill("choice_text", "Baby don't hurt me")
b.select("question", question_uuid)
b.find_by_name("add").click()
assert b.is_element_present_by_css("#msg-item-added")
with transaction.manager:
assert dbsession.query(Choice).first().question is not None
开发者ID:rmoorman,项目名称:websauna,代码行数:26,代码来源:test_autoform.py
示例7: test_question_delete
def test_question_delete(browser: DriverAPI, tutorial_req, web_server, dbsession):
"""Delete question and make sure it deletes related choices.."""
from .tutorial import Question
from .tutorial import Choice
with transaction.manager:
q = Question(question_text="What is love")
dbsession.add(q)
dbsession.flush()
c = Choice(choice_text="Baby don't hurt me", question=q)
dbsession.add(c)
dbsession.flush()
q_slug = uuid_to_slug(q.uuid)
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit("{}/admin/models/question/{}".format(web_server, q_slug))
b.find_by_css("#btn-crud-delete").click()
b.find_by_css("#btn-delete-yes").click()
with transaction.manager:
assert dbsession.query(Question).count() == 0
assert dbsession.query(Choice).count() == 0
开发者ID:agronholm,项目名称:websauna,代码行数:26,代码来源:test_autoform.py
示例8: test_set_email
def test_set_email(browser, victim_browser, web_server, init, dbsession):
"""Setting email resets user session and user can log in again."""
b = browser
b2 = victim_browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
create_logged_in_user(dbsession, init.config.registry, web_server, b2, email="[email protected]", password="secret")
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
b.find_by_css("#btn-crud-edit").click()
b.fill("email", "[email protected]")
b.find_by_name("save").click()
assert b.is_element_present_by_css("#msg-changes-saved")
# Victim browser should have now logged out
b2.visit(web_server)
assert b2.is_element_present_by_css("#msg-session-invalidated")
assert b2.is_element_present_by_css("#nav-sign-in")
# See that we can log in with the new password
b2.visit(web_server + "/login")
b2.fill("username", "[email protected]")
b2.fill("password", "secret")
b2.find_by_name("login_email").click()
assert b2.is_element_present_by_css("#msg-you-are-logged-in")
开发者ID:frispete,项目名称:websauna,代码行数:30,代码来源:test_user_admin.py
示例9: test_add_question
def test_add_question(browser: DriverAPI, tutorial_req, web_server, dbsession):
"""Adding questions should be succesful."""
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit(web_server)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-question").click()
b.fill("question_text", "What is love")
b.find_by_css("#deformField2-date").click()
# Pick any date
b.find_by_css(".picker__day--infocus")[0].click()
time.sleep(0.5) # Give some time for the browser, next click fails on CI
b.find_by_css("#deformField2-time").click()
b.find_by_css(".picker__list-item")[0].click()
time.sleep(0.5) # Give some time for the browser, next click fails on CI
b.find_by_name("add").click()
assert b.is_element_present_by_css("#msg-item-added")
开发者ID:rmoorman,项目名称:websauna,代码行数:26,代码来源:test_autoform.py
示例10: test_put_user_to_group
def test_put_user_to_group(web_server, browser, dbsession, init):
"""Check that we can assign users to groups in admin interface."""
b = browser
from websauna.system.user.models import Group
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
# Create a group where we
with transaction.manager:
g = Group(name=GROUP_NAME)
dbsession.add(g)
dbsession.flush()
group_uuid = uuid_to_slug(g.uuid)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-list-user").click()
b.find_by_css(".crud-row-1 .btn-crud-listing-edit").click()
# Check the group checkbox. We could put some more specific classes for controls here.
b.find_by_css("input[type='checkbox'][value='{}']".format(group_uuid)).click()
b.find_by_name("save").click()
assert b.is_text_present("Changes saved")
# Now we are on Show page of the user, having the new group name visible
assert b.is_text_present(GROUP_NAME)
开发者ID:frispete,项目名称:websauna,代码行数:28,代码来源:test_groups.py
示例11: test_edit_choice_remove_question
def test_edit_choice_remove_question(browser: DriverAPI, tutorial_req, web_server, dbsession):
"""Editing choice allows us to reset question value back to null."""
from .tutorial import Question
from .tutorial import Choice
with transaction.manager:
q = Question(question_text="What is love")
dbsession.add(q)
dbsession.flush()
c = Choice(choice_text="Foobar", question=q)
dbsession.add(c)
dbsession.flush()
c_slug = uuid_to_slug(c.uuid)
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit("{}/admin/models/choice/{}/edit".format(web_server, c_slug))
b.select("question", "")
b.find_by_name("save").click()
assert b.is_element_present_by_css("#msg-changes-saved")
with transaction.manager:
c = dbsession.query(Choice).get(1)
assert c.question == None
开发者ID:rmoorman,项目名称:websauna,代码行数:28,代码来源:test_autoform.py
示例12: test_add_choice_no_question
def test_add_choice_no_question(browser: DriverAPI, tutorial_req, web_server, dbsession):
"""Add one choice, no questions available."""
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit(web_server)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-choice").click()
b.fill("choice_text", "Baby don't hurt me")
b.find_by_name("add").click()
assert b.is_element_present_by_css("#msg-item-added")
开发者ID:rmoorman,项目名称:websauna,代码行数:14,代码来源:test_autoform.py
示例13: test_question_listing
def test_question_listing(browser: DriverAPI, tutorial_req, web_server, dbsession):
"""Question listing shows question text."""
from .tutorial import Question
with transaction.manager:
q = Question(question_text="What is love")
dbsession.add(q)
dbsession.flush()
b = browser
create_logged_in_user(dbsession, tutorial_req.registry, web_server, browser, admin=True)
b.visit("{}/admin/models/question/listing".format(web_server))
assert b.is_text_present("What is love")
开发者ID:rmoorman,项目名称:websauna,代码行数:15,代码来源:test_autoform.py
示例14: test_set_enabled
def test_set_enabled(browser:DriverAPI, victim_browser, web_server, init, dbsession):
"""Setting enabled resets user session. User can log after the account has been re-enabled."""
b = browser
b2 = victim_browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
create_logged_in_user(dbsession, init.config.registry, web_server, b2, email="[email protected]", password="secret")
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
b.find_by_css("#btn-crud-edit").click()
b.find_by_name("enabled").click() # Turns off
b.find_by_name("save").click()
assert b.is_element_present_by_css("#msg-changes-saved")
# Victim browser should have now logged out
b2.visit(web_server)
# We do not get session invalidated message this time, because request.user does not resolve for disabled user at all and middleware cannot distinct between anonymous and disabled user
# assert b2.is_element_present_by_css("#msg-session-invalidated")
assert b2.is_element_present_by_css("#nav-sign-in")
# See that we cannot login on disabled user
b2.visit(web_server + "/login")
b2.fill("username", "[email protected]")
b2.fill("password", "secret")
b2.find_by_name("login_email").click()
assert b2.is_element_present_by_css("#msg-authentication-failure")
# Re-enable the use
b.find_by_css("#btn-crud-edit").click()
b.find_by_name("enabled").click() # Turns on
b.find_by_name("save").click()
assert b.is_element_present_by_css("#msg-changes-saved")
# User can log in again
# We get this message in wrong phase, but it's not really big deal as manual user deactivation should not be that common
b2.visit(web_server)
assert b2.is_element_present_by_css("#msg-session-invalidated")
b2.visit(web_server + "/login")
b2.fill("username", "[email protected]")
b2.fill("password", "secret")
b2.find_by_name("login_email").click()
assert b2.is_element_present_by_css("#msg-you-are-logged-in")
开发者ID:frispete,项目名称:websauna,代码行数:47,代码来源:test_user_admin.py
示例15: test_view_user_details
def test_view_user_details(browser, web_server, init, dbsession):
"""See that we can view the details of the user in a browser."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
# TODO: Use CSS selector
assert b.is_text_present("[email protected]")
with transaction.manager:
# Check that we show the user uuid slug on the page correctly
u = dbsession.query(User).first()
assert b.is_text_present(uuid_to_slug(u.uuid))
开发者ID:frispete,项目名称:websauna,代码行数:18,代码来源:test_user_admin.py
示例16: test_add_user_password_mismatch
def test_add_user_password_mismatch(browser, web_server, init, dbsession):
"""Make sure new user is not created on password mismatch."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-user").click()
# b.fill("username", "test2")
b.fill("email", "[email protected]")
b.fill("password", "secret")
b.fill("password-confirm", "faied")
b.find_by_name("add").click()
# TODO: Convert to CSS based test
assert b.is_text_present("Password did not match confirm")
开发者ID:frispete,项目名称:websauna,代码行数:19,代码来源:test_user_admin.py
示例17: test_delete_user_confirm
def test_delete_user_confirm(browser, web_server, init, dbsession):
"""Delete a user."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
# Create another user who we are going to delete
with transaction.manager:
create_user(dbsession, init.config.registry, email="[email protected]")
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
b.find_by_css("#btn-crud-delete").click()
b.find_by_css("#btn-delete-yes").click()
assert b.is_element_present_by_css("#msg-item-deleted")
with transaction.manager:
assert dbsession.query(User).count() == 1
开发者ID:frispete,项目名称:websauna,代码行数:19,代码来源:test_user_admin.py
示例18: test_add_group
def test_add_group(web_server, browser, dbsession, init):
"""Create a new group through admin interface."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
b.find_by_css("#nav-admin").click()
b.find_by_css("#btn-panel-add-group").click()
b.fill("name", GROUP_NAME)
b.fill("description", "Foobar")
b.find_by_name("add").click()
assert b.is_text_present("Item added")
# Check we appear in the list
b.visit("{}/admin/models/group/listing".format(web_server))
# The description appears in the listing
assert b.is_text_present("Foobar")
开发者ID:frispete,项目名称:websauna,代码行数:20,代码来源:test_groups.py
示例19: test_context_sensitive_shell
def test_context_sensitive_shell(web_server, browser, dbsession, init):
"""See we can open a context sensitive shell in admin."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
b.find_by_css("#btn-crud-shell").click()
# Ramping up shell takes some extended time
time.sleep(5)
# We succesfully exposed obj
assert b.is_text_present("[email protected]")
b.find_by_css("#pyramid_notebook_shutdown").click()
# Back to home screen
assert b.is_element_visible_by_css("#nav-logout")
开发者ID:enkidulan,项目名称:websauna.notebook,代码行数:20,代码来源:test_shell_view.py
示例20: test_delete_user_cancel
def test_delete_user_cancel(browser, web_server, init, dbsession):
"""Delete a user, but back off on the confirmation screen."""
b = browser
create_logged_in_user(dbsession, init.config.registry, web_server, browser, admin=True)
# Create another user who we are going to delete
with transaction.manager:
create_user(dbsession, init.config.registry, email="[email protected]")
b.find_by_css("#nav-admin").click()
b.find_by_css("#latest-user-shortcut").click()
b.find_by_css("#btn-crud-delete").click()
b.find_by_css("#btn-delete-no").click()
# Back to the show page
assert b.is_element_present_by_css("#crud-show")
with transaction.manager:
assert dbsession.query(User).count() == 2
开发者ID:frispete,项目名称:websauna,代码行数:21,代码来源:test_user_admin.py
注:本文中的websauna.tests.utils.create_logged_in_user函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论