예제 #1
0
def test_RunLengthList_insertion_normalisation():
    r1 = RunLengthList([(0, 'foo'), (1, 'bar')])
    r2 = RunLengthList([(0, 'foo'), (1, 'bar')])
    r1.insert_list_at(1, 2, r2)
    assert r1.items() == [(0, 'foo'), (2, 'bar')], r1.items()
예제 #2
0
def test_inserted_list_gets_chopped_if_not_enough_length():
    r1 = RunLengthList([(0, 'foo'), (1, 'bar')])
    r2 = RunLengthList([(0, 'baz'), (2, 'qux')])
    r1.insert_list_at(1, 1, r2)
    assert r1.items() == [(0, 'foo'), (1, 'baz'), (2, 'bar')]
예제 #3
0
def test_RunLengthList_insertion():
    r1 = RunLengthList([(0, 'foo'), (2, 'qux')])
    r2 = RunLengthList([(0, 'bar'), (2, 'baz')])
    r1.insert_list_at(1, 3, r2)
    assert r1.items() == [(0, 'foo'), (1, 'bar'), (3, 'baz'), (4, 'foo'),
                          (5, 'qux')], r1.items()