def test_user_from_dict(self): uid = "urYr3" secret = "1111" params_valid = dict() params_valid['uid'] = uid params_valid['name'] = "Mario" params_valid['icon'] = "" params_valid['secret'] = secret success_valid, user = User.from_dict(params=params_valid) assert success_valid, "failed to get User from dict" assert user.uid == uid assert user.secret == secret print "[test_user_from_dict] test case 0 finished" params_invalid_0 = dict() params_invalid_0['uid'] = uid params_invalid_0['name'] = "Mario" # params_invalid_0['secret'] = secret success_invalid_0, info = User.from_dict(params=params_invalid_0) assert not success_invalid_0, "expected KeyError, " + info print "[test_user_from_dict] test case 1 finished" params_invalid_1 = None success_invalid_1, info = User.from_dict(params=params_invalid_1) assert not success_invalid_0, info print "[test_user_from_dict] test case 2 finished"
def on_add_user(params): # it is a kind of registration """ To create user provide 3 basic parameters - uid - unique id (email for instance) - name - user name - icon - user url icon (optional) - secret - password Cases to cover: 400 missing params 201 created 400 failed to add new user :param params: :return: """ correct, user = User.from_dict(params=params) if not correct: response = json.dumps({'error': user}) return response, 400 else: result, info = users_storage.add_user(user) if result: response = user.to_json() return response, 201 else: response = json.dumps({'error': info}) return response, 400