def login(username): '''A function that takenano s in a username and returns a user object''' _log.info('Attempting to retrieve user from database') query_dict = {'username': username} user_dict = _scl.users.find_one(query_dict) _log.debug(user_dict) return User.from_dict(user_dict) if user_dict else None
def test_from_dict(self): '''Test from_dict in user''' _log.info('Testing test_from') test_dict = { 'username': '******', 'password': '******', 'firstname': 'firstname', 'lastname': 'lastname' } self.user = User().from_dict(test_dict) self.assertIs(type(UserTestSuite.user), User)
def login(): '''The login functionality''' if request.method == 'POST': _log.debug("In POST") # getting the user information from the form and getting the information from the db _log.debug(request.json['username']) temp = request.json['username'] _log.debug(temp) user = db.login(temp) _log.debug(user) _log.debug(request.json) _log.debug(user.password) _log.debug(request.json['password']) if user.password == request.json['password']: # Generate our token auth_token = user.encode_auth_token() _log.debug(dir(auth_token)) response = make_response(jsonify(user)) response.set_cookie('authorization', auth_token.decode()) return response, 200 return {}, 401 elif request.method == 'PUT': user = db.add_user(request.json) value = bytes(json.dumps(user, cls=SubmissionEncoder), 'utf-8') return value, 200 elif request.method == 'GET': auth_token = request.cookies.get('authorization') if auth_token: _log.debug(auth_token) _log.debug(User.decode_auth_token(auth_token)) return jsonify( db.get_user_by_id(User.decode_auth_token(auth_token))), 200 else: return {}, 401 else: empty = make_response({}) empty.set_cookie('authorization', '') return empty, 204
def test_to_dict(self): '''Test to_dict in user''' _log.info('Testing test_to_dict') self.user = User('username', 'password') self.assertIs(type(UserTestSuite.user.to_dict()), dict)
def test_str(self): '''Tests __str__ in user''' _log.info('Testing test_str') self.user = User('username', 'password', 'firstname', 'lastname') self.assertIs(type(str(UserTestSuite.user)), str)
def setUpClass(cls): cls.user = User()
def setUp(self): self.user = User(-1, 'jill', '111', 'jill', 'mill', 'Customer')
def get_teachers(): dict_list = _scl.users.find({'role': 'teacher'}) return [User.from_dict(user) for user in dict_list]
def get_students(): dict_list = _scl.users.find({'role': 'student'}) return [User.from_dict(user) for user in dict_list]
def get_users(): '''Read all the users from the collection''' _log.info('Attempting to retrieve all users from database') dict_list = _scl.users.find() return [User.from_dict(user) for user in dict_list]
_log.debug('Looping over id\'s') _log.debug('inserting at id ' + str(increment)) user['_id'] = user['_id'] + increment _log.debug(user['_id']) increment += 1 _scl.users.insert_one(user) return user except: pass if __name__ == '__main__': _log.info( 'Running Mongo script: dropping collections from project2 database') _log.info(_scl.list_collection_names()) _scl.users.drop() _scl.counter.drop() _scl.counter.insert_one({'_id': 'UNIQUE_COUNT', 'count': 0}) user_list = [] user_list.append( User(_get_id(), 'mik', 'mm', '11', '123 main st', 'teacher').to_dict()) user_list.append( User(_get_id(), 'john', 'dd', '22', '123 main st', 'admin').to_dict()) user_list.append( User(_get_id(), 'mary', 'ff', '33', '123 main st', 'student').to_dict()) _scl.users.insert_many(user_list)
def setUp(self): self.user = User(-1, 'jillmill', 'jill', '111', '123 main st', 'student')
def get_requirements(requirements): '''Gets all requirements''' _log.info('Attempting to retrieve all users from database') dict_list = _scl.users.find({'username': requirements}) return [User.from_dict(user) for user in dict_list]
def get_user_by_id(db_id: int): '''Returns a user by their id''' return User.from_dict(_scl.users.find_one({'_id': db_id}))