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
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
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
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
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
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