def test_merge_marked_chunks__first_false_second_true_returns_merged_first_entry(
):
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
    ]
    mask = [False, True]

    res = merge_marked_chunks(x, mask)

    assert [Chunk(size=3, is_silence=False)] == res
def test_add_end_buffer__one_entry_returns_one_chunk():
    x = [
        Chunk(size=1, is_silence=False),
    ]
    mask = [True]

    res = add_end_buffer(x, mask, 1)

    assert [
        Chunk(size=1, is_silence=False),
    ] == res
def test_merge_marked_chunks__one_entry_returns_one_chunk():
    x = [
        Chunk(size=1, is_silence=False),
    ]
    mask = [True]

    res = merge_marked_chunks(x, mask)

    assert [
        Chunk(size=1, is_silence=False),
    ] == res
def test_add_end_buffer__first_entry__adds_buffer():
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
    ]
    mask = [True, False]

    res = add_end_buffer(x, mask, 1)

    assert [
        Chunk(size=2, is_silence=False),
        Chunk(size=1, is_silence=False),
    ] == res
def test_add_start_buffer__last_entry_too_much_add__adds_buffer():
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
    ]
    mask = [False, True]

    res = add_start_buffer(x, mask, 10)

    assert [
        Chunk(size=0, is_silence=False),
        Chunk(size=3, is_silence=False),
    ] == res
def test_merge_same_coherent_chunks__multiple_coherent_with_diff_are_merged():
    x = [
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=True),
        Chunk(size=5, is_silence=True),
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
    ]

    res = merge_same_coherent_chunks(x)
    assert [
        Chunk(size=15, is_silence=False),
        Chunk(size=10, is_silence=True),
        Chunk(size=10, is_silence=False),
    ] == res
def test_merge_same_coherent_chunks__multiple_coherent_are_merged():
    x = [
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
        Chunk(size=5, is_silence=False),
    ]

    res = merge_same_coherent_chunks(x)
    assert [Chunk(size=25, is_silence=False)] == res
def test_add_start_buffer__all_false__adds_no_buffer():
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
        Chunk(size=3, is_silence=False),
    ]
    mask = [False, False, False]

    res = add_start_buffer(x, mask, 1)

    assert [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
        Chunk(size=3, is_silence=False),
    ] == res
def test_add_start_buffer__middle_entry__adds_buffer():
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
        Chunk(size=3, is_silence=False),
    ]
    mask = [False, True, False]

    res = add_start_buffer(x, mask, 1)

    assert [
        Chunk(size=0, is_silence=False),
        Chunk(size=3, is_silence=False),
        Chunk(size=3, is_silence=False),
    ] == res
示例#10
0
def test_add_start_buffer__last_entry_too_much_add__adds_buffer_and_not_subtracts_on_second_previous_buffer(
):
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
        Chunk(size=3, is_silence=False),
    ]
    mask = [False, False, True]

    res = add_start_buffer(x, mask, 10)

    assert [
        Chunk(size=1, is_silence=False),
        Chunk(size=0, is_silence=False),
        Chunk(size=5, is_silence=False),
    ] == res
示例#11
0
def test_add_end_buffer__first_entry_too_much_add__adds_buffer_and_not_subtracts_on_second_next_buffer(
):
    x = [
        Chunk(size=1, is_silence=False),
        Chunk(size=2, is_silence=False),
        Chunk(size=3, is_silence=False),
    ]
    mask = [True, False, False]

    res = add_end_buffer(x, mask, 10)

    assert [
        Chunk(size=3, is_silence=False),
        Chunk(size=0, is_silence=False),
        Chunk(size=3, is_silence=False),
    ] == res
示例#12
0
def test_merge_same_coherent_chunks__two_different__returns_two_different():
    x = [Chunk(size=5, is_silence=True), Chunk(size=5, is_silence=False)]

    res = merge_same_coherent_chunks(x)
    assert [Chunk(size=5, is_silence=True),
            Chunk(size=5, is_silence=False)] == res
示例#13
0
def test_merge_same_coherent_chunks__two_silences__returns_one_silence():
    x = [Chunk(size=5, is_silence=True), Chunk(size=5, is_silence=True)]

    res = merge_same_coherent_chunks(x)
    assert [Chunk(size=10, is_silence=True)] == res
示例#14
0
def test_merge_same_coherent_chunks__single_entry__returns_single_entry():
    x = [Chunk(size=5, is_silence=True)]
    res = merge_same_coherent_chunks(x)
    assert [Chunk(size=5, is_silence=True)] == res