def register_login_new_user_impl() -> dict: """ Create a new user, register the new user and log in. My own home id will be yield too. A dict will be returned, and keys are: - client - account_id - token - email - password - home_id """ client: Client = get_client_from_orm_by_id(3) email = generate_email() password = "******" # register user register = TestRegisterNewUserSuccessfully() register.config.variables(**{ "client": client, "email": email, "password": password }) register.test_start() # login login = LoginV2() login.config.variables(**{ "client": client, "email": email, "password": password }) login.test_start() # {"account_id": ?, "token": ?} token_dict = get_sub_dict(login.get_export_variables(), *['account_id', 'token']) get_home_list = GetHomeList() get_home_list.config.variables(**token_dict, client=client) get_home_list.test_start() my_own_home_id = get_home_list.get_export_variables()["my_own_home_id"] yield { **token_dict, "email": email, "password": password, "client": client, "home_id": my_own_home_id } # delete user delete_user = DeleteUser() delete_user.with_variables({}) # get rid of the effect on session variables from previous instances delete_user.config.variables(client=client, **token_dict) delete_user.test_start()
def register_and_verify_with_diff_emails_impl(register_email: str, verify_email: str) -> dict: """ Register and verify with different emails. Keys of returned dict: - register_email - verify_email - password - account_id - token """ client = clients.ios password = "******" register_login_result = ( TestRegisterAndVerifyWithDiffEmails().with_variables({ "client": client, "register_email": register_email, "verify_email": verify_email, "password": password }).run()) account_id = register_login_result.get_export_variables()["account_id"] token = register_login_result.get_export_variables()["token"] yield { "register_email": register_email, "verify_email": verify_email, "password": password, "account_id": account_id, "token": token } (DeleteUser().with_variables({ "client": client, "account_id": account_id, "token": token }).run())
def register_login_new_user_with_no_auth_impl() -> dict: """ Create a new user, register the new user with email not been verified and log in. A dict will be returned, and keys are: - client - account_id - token - email - password """ client = clients.ios email = generate_email() password = "******" # register user (TestRegisterWithNoAuth().with_variables({ "client": client, "email": email, "password": password }).run()) # login login_result = (LoginV2().with_variables({ "client": client, "email": email, "password": password }).run()) # {"account_id": <account id>, "token": <token>} token_dict = get_sub_dict(login_result.get_export_variables(), *['account_id', 'token']) yield { **token_dict, "email": email, "password": password, "client": client, } # delete user (DeleteUser().with_variables({"client": client, **token_dict}).run())
def register_login_new_users_impl(user_num=None) -> dict: """ Create users, register new users and log in. My own home id will be yield too. A dict will be returned, and keys are: - user_list """ user_list = [] client: Client = get_client_from_orm_by_name('ios') for i in range(user_num): email = generate_email() password = "******" # register user register = TestRegisterNewUserSuccessfully() register.config.variables(**{ "client": client, "email": email, "password": password }) register.run() # login login = LoginV2() login.config.variables(**{ "client": client, "email": email, "password": password }) login.run() # {"account_id": ?, "token": ?} token_dict = get_sub_dict(login.get_export_variables(), *['account_id', 'token', 'user_info']) user_list.append(token_dict) yield user_list # delete user for token_dict in user_list: delete_user = DeleteUser() delete_user.with_variables( {} ) # get rid of the effect on session variables from previous instances delete_user.config.variables(client=client, **token_dict) delete_user.run()
def register_login_new_users_and_complete_lottery_impl(user_num=2) -> dict: """ Create users, register new users and log in ,complete three times lottery. A dict will be returned, and keys are: - user_list """ user_list = [] expected_lottery_prize_people_list = [] client: Client = get_client_from_orm_by_id(1) for i in range(user_num): email = generate_email() password = "******" # register user register = TestRegisterNewUserSuccessfully() register.with_variables({ "client": client, "email": email, "password": password }) register.run() # login login = LoginV2() login.with_variables({ "client": client, "email": email, "password": password }) login.run() # {"account_id": ?, "token": ?} token_dict = get_sub_dict(login.get_export_variables(), *['account_id', 'token', 'user_info']) user_list.append(token_dict) # getRemainingTimes get_remaining_times = BaseGetRemainingTimesSuccessfully() get_remaining_times.with_variables({ **get_sub_dict(login.get_export_variables(), *[ 'account_id', 'token' ]), "client": client, "award_pool_name": anniversary_draw_settings.award_pool_name, "trigger_source": "$award_pool_name" }) get_remaining_times.run() # draw lottery draw = BaseDrawSuccessfully() draw.with_variables({ **get_sub_dict(login.get_export_variables(), *[ 'account_id', 'token', 'user_info' ]), "client": client, "award_pool_name": anniversary_draw_settings.award_pool_name, "trigger_source": "$award_pool_name", "expected_remaining_times": 0, "expected_lottery_prize_people_list": expected_lottery_prize_people_list }) draw.run() expected_lottery_prize_people_list = draw.get_export_variables( )['expected_lottery_prize_people_list'] yield { "user_list": user_list, "expected_lottery_prize_people_list": expected_lottery_prize_people_list } # delete user for token_dict in user_list: delete_user = DeleteUser() delete_user.with_variables( {} ) # get rid of the effect on session variables from previous instances delete_user.config.variables(client=client, **token_dict) delete_user.run()
def register_login_web_user_with_no_auth_impl() -> dict: """ Create a new user, register the new user with email not been verified and log in. A dict will be returned, and keys are: - client - account_id - token - email - password """ email = generate_email() password = "******" # register user register = TestRegisterWithNoAuth() register.config.variables(**{ "client": clients.web, "email": email, "password": password }) register.test_start() # log in web login = Login() login.config.variables(**{ "client": clients.web, "email": email, "password": password }) login.test_start() # {"account_id": <account id>, "token": <token>} token_dict = get_sub_dict(login.get_export_variables(), *['account_id', 'token']) yield { **token_dict, "email": email, "password": password, "client": clients.ios, } # log in app login = LoginV2() login.config.variables(**{ "client": clients.ios, "email": email, "password": password }) login.test_start() # {"account_id": <account id>, "token": <token>} token_dict = get_sub_dict(login.get_export_variables(), *['account_id', 'token']) # delete user delete_user = DeleteUser() delete_user.with_variables( {} ) # get rid of the effect on session variables from previous instances delete_user.config.variables(client=clients.ios, **token_dict) delete_user.test_start()
def register_login_new_user_impl(is_generate_mall_user: bool = False, client: Client = clients.ios) -> dict: """ Create a new user, register the new user and log in. My own home id will be yield too. A dict will be returned, and keys are: - client - account_id - token - email - password - home_id - user_info """ client = client email = generate_email() password = "******" # register user (TestRegisterNewUserSuccessfully().with_variables({ "client": client, "email": email, "password": password }).run()) # login login_result = (LoginV2().with_variables({ "client": client, "email": email, "password": password }).run()) # {"account_id": ?, "token": ?} export_vars = login_result.get_export_variables() token_dict = get_sub_dict(export_vars, *['account_id', 'token']) user_info = export_vars["user_info"] get_home_list_result = (GetHomeList().with_variables({ "client": client, **token_dict }).run()) my_own_home_id = get_home_list_result.get_export_variables( )["my_own_home_id"] # create mall user if is_generate_mall_user: (CreateMallUserV3().with_variables({ "client": client, **token_dict }).run()) yield { **token_dict, "email": email, "password": password, "client": client, "home_id": my_own_home_id, "user_info": user_info } # delete user (DeleteUser().with_variables({"client": client, **token_dict}).run())