def test_create_user(start_mongo_no_existing_collection_db): user = {'email': 'email@address', 'password': '******'} usr = User(user, mongo_uri, mongo_database) usr.create_user() with UserStore(mongo_uri, mongo_database) as user_store: stored_user = user_store.get_user(user) assert stored_user['email'] == user['email'] assert stored_user['first_name'] == 'unknown first name' assert stored_user['last_name'] == 'unknown last name' assert len(stored_user['salt']) == 16 assert stored_user.get('hash') is not None
def signup(): if request.method == 'POST': app.logger.info("Request: %s" % request.get_json()) user_details = request.get_json() user = User(user_details) status_code = 200 try: new_user = user.create_user() response = { 'authorized': True, 'token': get_jwt(new_user), 'email': new_user['email'], 'first_name': new_user['first_name'], 'last_name': new_user['last_name'] } except UserAlreadyExists as e: status_code = 400 response = {'authorized': False, 'message': str(e)} except UserCreateError as e: status_code = 500 response = {'authorized': False, 'message': str(e)} except Exception as e: status_code = 500 response = { 'authorized': False, 'message': str(e), } else: app.logger.info('No idea what this request is') status_code = 400 response = {'authorized': False} return jsonify(response), status_code
def test_get_user_by_email(start_mongo_no_existing_collection_db): mongo_uri = 'mongodb://127.0.0.1:27017/' mongo_database = 'test_nhsdb' user = { 'email': 'email@address', 'password': '******', 'first_name': 'laksa', 'last_name': 'Thai food' } usr = User(user, mongo_uri, mongo_database) usr.create_user() stored_user = usr.get_user_by_email() assert stored_user['email'] == user['email'] assert stored_user['first_name'] == user['first_name'] assert stored_user['last_name'] == user['last_name'] assert len(stored_user['salt']) == 16 assert stored_user.get('hash') is not None