Files
QSfera/Desktop/test/gui/steps/spaces_context.py
Курнат Андрей 2315f25754 Initial QSfera import
2026-06-07 10:20:04 +03:00

81 lines
2.6 KiB
Python

from sure import ensure
from pageObjects.EnterPassword import EnterPassword
from pageObjects.Toolbar import Toolbar
from helpers.UserHelper import get_password_for_user
from helpers.SetupClientHelper import setup_client, get_resource_path
from helpers.SyncHelper import wait_for_initial_sync_to_complete
from helpers.SpaceHelper import (
create_space,
create_space_folder,
create_space_file,
add_user_to_space,
get_file_content,
resource_exists,
)
from helpers.ConfigHelper import get_config, set_config
@Given('the administrator has created a space "{space_name}"')
def step(context, space_name):
create_space(space_name)
@Given('the administrator has created a folder "{folder_name}" in space "{space_name}"')
def step(context, folder_name, space_name):
create_space_folder(space_name, folder_name)
@Given(
'the administrator has uploaded a file "{file_name}" with content "{content}" inside space "{space_name}"'
)
def step(context, file_name, content, space_name):
create_space_file(space_name, file_name, content)
@Given(
'the administrator has added user "{user}" to space "{space_name}" with role "{role}"'
)
def step(context, user, space_name, role):
add_user_to_space(user, space_name, role)
@Given('user "{user}" has set up a client with space "{space_name}"')
def step(context, user, space_name):
set_config('syncConnectionName', space_name)
password = get_password_for_user(user)
setup_client(user, space_name)
enter_password = EnterPassword()
enter_password.accept_certificate()
enter_password.login_after_setup(user, password)
# wait for files to sync
wait_for_initial_sync_to_complete(get_resource_path('/', user, space_name))
Toolbar.wait_toolbar_enabled()
@Then(
'as "{user}" the file "{file_name}" in the space "{space_name}" should have content "{content}" in the server'
)
def step(context, user, file_name, space_name, content):
downloaded_content = get_file_content(space_name, file_name, user)
with ensure(
'File "{0}" in space "{1}" should have content "{2}" but got "{3}"',
file_name,
space_name,
content,
downloaded_content,
):
content.should.equal(downloaded_content)
@Then(
'as "{user}" the space "{space_name}" should have file "{resource_name}" in the server'
)
@Then(
'as "{user}" the space "{space_name}" should have folder "{resource_name}" in the server'
)
def step(context, user, space_name, resource_name):
exists = resource_exists(space_name, resource_name, user)
with ensure('Resource "{0}" should exist but it does not', resource_name):
exists.should.be.true