示例#1
0
def thread_map_preserves_order_of_elements():
    original = [0.1, 0.05, 0]
    
    def waiting_identity(value):
        time.sleep(value)
        return value
    
    result = futures.thread_map(waiting_identity, original)
    assert_equal(original, list(result))
示例#2
0
def thread_map_across_empty_list_returns_empty_iterator():
    result = futures.thread_map(lambda x: x, [])
    assert_equal(0, len(result))
示例#3
0
def error_is_raised_if_mapping_function_raises_error():
    assert_raises(KurtError, lambda: futures.thread_map(raise_error, [0]))
示例#4
0
def thread_map_applies_function_to_each_element():
    original = [1, 2, 3]
    result = futures.thread_map(lambda x: x * x, original)
    assert_equal([1, 4, 9], list(result))
示例#5
0
def passing_identity_function_to_thread_map_preserves_elements():
    original = ["apple", "banana", "coconut"]
    result = futures.thread_map(lambda x: x, original)
    assert_equal(original, list(result))