def test_nested_requests_with_log_decorator():
    manager = ProcessManager()
    manager.log.clear()
    execute_tasks(manager, [multi_task2 for _ in range(1)], timeout=9)
    execute_tasks(manager, [multi_task2 for _ in range(20)], timeout=18)
    execute_tasks(manager, [multi_task2 for _ in range(80)], timeout=27)
    execute_tasks(manager, [multi_task2 for _ in range(400)], timeout=60)
    manager.report(show_errors=False, analyze_fail=True)
def test_multi_requests_with_multi_processing():
    manager = ProcessManager()
    manager.log.clear()
    execute_tasks(manager, [multi_task1 for _ in range(1)], timeout=12)
    execute_tasks(manager, [multi_task1 for _ in range(20)], timeout=24)
    execute_tasks(manager, [multi_task1 for _ in range(80)], timeout=36)
    execute_tasks(manager, [multi_task1 for _ in range(400)], timeout=80)
    manager.report()
def test_simple_requests_with_multi_processing():
    manager = ProcessManager()
    manager.log.clear()
    execute_tasks(manager, [task1 for _ in range(1)], timeout=3)
    execute_tasks(manager, [task1 for _ in range(20)], timeout=6)
    execute_tasks(manager, [task1 for _ in range(80)], timeout=9)
    execute_tasks(manager, [task1 for _ in range(400)], timeout=20)
    manager.report()
def execute_tasks(manager: ProcessManager, tasks: Tasks, timeout):
    t = time()
    try:
        manager.run_until_complete(tasks, timeout=timeout)
    except TimeoutError:
        print(format_exc())
    t = time() - t
    print(f'took {round(t, 3)}s')
Exemple #5
0
def test_nested_requests_with_log_decorator():
    manager = ProcessManager()
    manager.log.clear()
    execute_tasks(manager,
                  [(multi_task, choice(['google', 'youtube', 'netflix']))
                   for _ in range(20)],
                  timeout=18)
    manager.report(show_errors=False, analyze_fail=True)
def test_messaging_with_processes():
    n = 10
    with ProcessManager() as m:
        m.log.clear()
        m.run_until_complete([st for _ in range(n)], timeout=None)
        m.merge()
        msgs = m.log.receive_all_messages()['st']
    assert len(msgs) == n
Exemple #7
0
def execute_tasks(tasks: Tasks, timeout):
    manager = ProcessManager()
    t = time()
    try:
        manager.run_until_complete(tasks, timeout=timeout)
        timed_out = None
    except TimeoutError:
        timed_out = format_exc()
    t = time() - t
    manager.report()
    print(f'took {round(t, 3)}s\n')
    manager.log.clear()
    return timed_out