Example #1
0
def test_init_user_collection():
    '''
    Test that a UserCollection is created
    '''
    with patch('main.users') as mocker:
        main.init_user_collection()
        mocker.UserCollection.assert_called_with()
Example #2
0
def baseline():
    '''
    Method needed for memory profiling
    '''
    user_baseline = main.init_user_collection()
    status_baseline = main.init_status_collection()
    main.load_users('accounts.csv', user_baseline)
    main.load_status_updates('status_updates.csv', status_baseline)
    main.add_user('dave03', '*****@*****.**', 'Dave', 'Jones', user_baseline)
    main.add_status('dave03', 'dave03_01', 'Random text', status_baseline)
    main.update_user('dave03', '*****@*****.**', 'Dave', 'Rex', user_baseline)
    main.update_status('dave03', 'dave03_01', 'Whos in charge now',
                       status_baseline)
    main.search_user('dave03', user_baseline)
    main.search_status('dave03_01', status_baseline)
    main.delete_status('dave03_01', status_baseline)
    main.delete_user('dave03', user_baseline)
Example #3
0
def menu():
    global user_collection
    user_collection = main.init_user_collection()
    global status_collection
    status_collection = main.init_status_collection()
    menu_options = {
        'A': load_users,
        'B': load_status_updates,
        'C': add_user,
        'D': update_user,
        'E': search_user,
        'F': delete_user,
        'G': save_users,
        'H': add_status,
        'I': update_status,
        'J': search_status,
        'K': delete_status,
        'L': save_status,
        'Q': quit_program
    }
    while True:
        user_selection = input("""
    A: Load user database
    B: Load status database
    C: Add user
    D: Update user
    E: Search user
    F: Delete user
    G: Save user database to file
    H: Add status
    I: Update status
    J: Search status
    K: Delete status
    L: Save status database to file
    Q: Quit

    Please enter your choice: """)
        if user_selection.upper() in menu_options:
            menu_options[user_selection.upper()]()
        else:
            print("Invalid option")
Example #4
0
def test_init_user_collection():
    collection = main.init_user_collection()

    assert collection.database == {}
Example #5
0
'''
Simple test for loading data into database
'''
from multiprocessing import Process, Queue
import main

def fun(queue):
    '''
    Example demenstrating queues
    '''
    queue.put([42, None, 'hello'])

if __name__ == '__main__':
    que = Queue()
    pro = Process(target=fun, args=(que,))
    pro.start()
    print(que.get())    # prints "[42, None, 'hello']"
    pro.join()
    # test main now
    accounts = main.init_user_collection()
    statuses = main.init_status_collection()
    accounts.table.drop()
    statuses.table.drop()
    print(main.load_users('accounts.csv', accounts))
    print(main.load_status_updates('status_updates.csv', statuses))
Example #6
0
'''
Import into ipython for easier testing
'''
import peewee as pw  # pylint: disable = W0611
import main

user = main.init_user_collection()
status = main.init_status_collection()
main.load_users('accounts.csv', user)
main.load_status_updates('status_updates.csv', status)
Example #7
0
    main.load_users('accounts.csv', user_baseline)
    main.load_status_updates('status_updates.csv', status_baseline)
    main.add_user('dave03', '*****@*****.**', 'Dave', 'Jones', user_baseline)
    main.add_status('dave03', 'dave03_01', 'Random text', status_baseline)
    main.update_user('dave03', '*****@*****.**', 'Dave', 'Rex', user_baseline)
    main.update_status('dave03', 'dave03_01', 'Whos in charge now',
                       status_baseline)
    main.search_user('dave03', user_baseline)
    main.search_status('dave03_01', status_baseline)
    main.delete_status('dave03_01', status_baseline)
    main.delete_user('dave03', user_baseline)


print('Timeit Data')
# Setup benchmarks
users = main.init_user_collection()
statuses = main.init_status_collection()
# Profiling with timeit
print('Load Users')
print(
    timer("main.load_users('accounts.csv', users)",
          globals=globals(),
          number=1))
print('Load Status Updates')
print(
    timer("main.load_status_updates('status_updates.csv', statuses)",
          globals=globals(),
          number=1))
print('Add User')
print(
    timer("main.add_user('dave03', '*****@*****.**', 'Dave', 'Jones', users)",
Example #8
0
 def setUp(self):
     self.user_collection = main.init_user_collection()
     self.status_collection = main.init_status_collection()
Example #9
0
 def test_init_user_collection(self):
     test_collection = main.init_user_collection()
     self.assertEqual(test_collection.database, {})