def test_delete_status(status): ''' Test each aspect of delete_status ''' # Refuse to delete a non existant status assert not user_status.delete_status(status[0]) user_status.add_status(*status) # Sucessfully delete a status assert user_status.delete_status(status[0])
def test_modify_status(status): ''' Test each aspect of modify_status ''' # Refuse to modify a non existant status assert not user_status.modify_status(*status) user_status.add_status(*status) # Sucessfully modify a status assert user_status.modify_status(*status)
def test_add_status(status): ''' Test each aspect of add_status ''' # Refuse statuses for non existant users assert not user_status.add_status(status[0], f'new_{status[1]}', status[2]) # Sucessfully add a status assert user_status.add_status(*status) # Refuse to duplicate statuses assert not user_status.add_status(*status)
def test_add_status(db): assert users.add_user( ("test1", "*****@*****.**", "tester", "one"), db) is True assert user_status.add_status( ["test1_status_id", "test1", "test status text"], db) is True assert user_status.add_status( ["test1_status_id", "test1", "test status text"], db) is False assert user_status.add_status( ["test1_status_id", "Non_existant_user_id", "test status text"], db) is False
def test_search_status(status): ''' Test each aspect of search_status ''' # Return an empty dictionary for a non existant status data = user_status.search_status(status[0]) assert data['status_id'] is None user_status.add_status(*status) # Sucessfully find a status data = user_status.search_status(status[0]) assert data['status_id'] == status[0] assert data['user_id'] == status[1] assert data['status_text'] == status[2]
def test_api_users(user, status, client): ''' Test each aspect of the users page in the API ''' expected = {} user_value = users.make_user(*user) user_value.pop('user_id') user_value['status_updates'] = [] expected[user[0]] = user_value responce = client.get('/users') assert responce.data == jsonify( expected).data # Confirm user without statuses user_status.add_status(*status) expected[user[0]]['status_updates'] = [status[2]] responce = client.get('/users') assert responce.data == jsonify(expected).data # Confirm normal operation
def add_status(status_id, user_id, status_text, db): ''' Requirements: - status_id cannot already exist in user_collection. - Returns False if there are any errors (for example, if user_collection.add_status() returns False). - Otherwise, it returns True. ''' return user_status.add_status([status_id, user_id, status_text], db)
def test_delete_status(db): assert users.add_user( ("test1", "*****@*****.**", "tester", "one"), db) is True assert user_status.add_status( ["test1_status_id", "test1", "test status text"], db) is True assert user_status.delete_status("test1_status_id", db) is True assert user_status.delete_status("test1_status_id", db) is False assert user_status.delete_status("other_status_id", db) is False
def add_status(user_id, status_id, status_text): ''' Creates a new instance of UserStatus and stores it in the database Requirements: - status_id cannot already exist in the database. - Returns False if there are any errors - Otherwise, it returns True. ''' logger.info('Adding a Status') return user_status.add_status(status_id, user_id, status_text)
def test_modify_status(db): assert users.add_user( ("test1", "*****@*****.**", "tester", "one"), db) is True assert user_status.add_status( ["test1_status_id", "test1", "test status text"], db) is True assert user_status.modify_status("test1_status_id", "test1", "new status text", db) is True assert user_status.modify_status("status_id_not_in_db", "test1", "some status", db) is False assert user_status.modify_status("status_id_not_in_db", "baduserid", "some status", db) is False
def test_search_status(db): assert users.add_user( ("test1", "*****@*****.**", "tester", "one"), db) is True assert user_status.add_status(["test1_status_id", "test1", "test me"], db) is True assert user_status.search_status("test1_status_id", db) == { 'id': 1, 'STATUS_ID': 'test1_status_id', 'USER_ID': 'test1', 'STATUS_TEXT': 'test me' } assert user_status.search_status("another_status_id", db) is None
def test_delete_user(db): assert users.add_user( ("test1", "*****@*****.**", "tester", "one"), db) is True assert users.add_user( ("test2", "*****@*****.**", "tester", "two"), db) is True assert user_status.add_status( ["test1_status_id", "test1", "test status text"], db) is True assert users.delete_user("test1", db) is True assert list(db['users']) == [{ 'id': 2, 'NAME': 'tester', 'EMAIL': '*****@*****.**', 'USER_ID': 'test2', 'LASTNAME': 'two' }] assert user_status.search_status("test1_status_id", db) is None