def test__pair_up_should_return_n_tuples():
    pool = reproduction.reproduce(params)
    mated_seeds = crossover._pair_up(pool)
    for mated in mated_seeds:
        assert isinstance(mated, tuple)
def test_it_should_return_an_array_of_strings():
    params["pool"] = reproduction.reproduce(params)
    asserted_pool = crossover.crossover(params)
    for asserted in asserted_pool:
        assert isinstance(asserted, str)
def test__pair_up_should_return_1_tuple():
    pool = reproduction.reproduce(params)
    mated_seeds = crossover._pair_up(pool)
    assert len(mated_seeds) >= 1
def test_it_should_return_an_array_of_size_2():
    params["pool"] = reproduction.reproduce(params)
    asserted_pool = crossover.crossover(params)
    assert len(asserted_pool) >= 2
def test_it_should_return_an_array_of_strings_of_length_8():
    params['carry_over'] = 32
    for i in range(10):
        asserted_pool = reproduction.reproduce(params)
        assert len(asserted_pool) == 32
def test_it_should_return_an_array_of_strings():
    asserted_pool = reproduction.reproduce(params)
    for asserted in asserted_pool:
        assert isinstance(asserted, str)
def test_it_should_mutate_a_pool_returning_n_strings():
    params['pool'] = reproduction.reproduce(params)
    crossed_over = crossover.crossover(params)
    asserted_pool = mutation.mutate_pool(crossed_over, mutation_probability)
    for asserted in asserted_pool:
        assert isinstance(asserted, str)
def test_it_should_mutate_a_pool_returning_2_strings():
    params['pool'] = reproduction.reproduce(params)
    crossed_over = crossover.crossover(params)
    asserted_pool = mutation.mutate_pool(crossed_over, mutation_probability)
    assert len(asserted_pool) >= 2