コード例 #1
0
def test_append_via_shift():
    """Tests append method for doublelinked list; using len"""
    adding_to = DoubleLinkList(())
    for i in xrange(40):
        adding_to.append(i)

    assert adding_to.shift() == 39
コード例 #2
0
def test_append_via_shift():
    """Tests append method for doublelinked list; using len"""
    adding_to = DoubleLinkList(())
    for i in xrange(40):
        adding_to.append(i)

    assert adding_to.shift() == 39
コード例 #3
0
def test_insert_via_shift():
    """Tests insert function for doublelinked list; using shift"""
    adding_to = DoubleLinkList(())
    for i in xrange(40):
        adding_to.insert(i)

    assert adding_to.shift() == 0
コード例 #4
0
def test_insert_via_shift():
    """Tests insert function for doublelinked list; using shift"""
    adding_to = DoubleLinkList(())
    for i in xrange(40):
        adding_to.insert(i)

    assert adding_to.shift() == 0
コード例 #5
0
def test_insert_via_len():
    """Tests insert function for doublelinked list; using len"""
    adding_to = DoubleLinkList(())
    for i in xrange(40):
        adding_to.insert(i)

    assert len(adding_to) == 40
    assert adding_to.pop() == 39
コード例 #6
0
def test_remove_5():
    """Fill a DoubleLinkList with (1,2,3), check removal of 5;
    should result in ValueError"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)
    with pytest.raises(ValueError):
        adding_to.remove(5)
コード例 #7
0
def test_insert_via_len():
    """Tests insert function for doublelinked list; using len"""
    adding_to = DoubleLinkList(())
    for i in xrange(40):
        adding_to.insert(i)

    assert len(adding_to) == 40
    assert adding_to.pop() == 39
コード例 #8
0
def test_pop_4():
    """Fill a DoubleLinkList with (1,2,3), check fourth pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.pop()  # First action covered by test_pop_1
    adding_to.pop()  # Second action covered by test_pop_2
    adding_to.pop()
    with pytest.raises(IndexError):
        adding_to.pop()
コード例 #9
0
def test_pop_4():
    """Fill a DoubleLinkList with (1,2,3), check fourth pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.pop()  # First action covered by test_pop_1
    adding_to.pop()  # Second action covered by test_pop_2
    adding_to.pop()
    with pytest.raises(IndexError):
        adding_to.pop()
コード例 #10
0
def test_remove_2():
    """Fill a DoubleLinkList with (1,2,3), check removal of 3"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.remove(2)
    assert adding_to.pop() == 1
    assert adding_to.shift() == 0
コード例 #11
0
def test_shift_2():
    """Fill a DoubleLinkList with (1,2,3), check second pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.shift()  # First action covered by test_pop_1
    assert adding_to.shift() == 1
コード例 #12
0
def test_pop_3():
    """Fill a DoubleLinkList with (1,2,3), check third pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.pop()  # First action covered by test_pop_1
    adding_to.pop()  # Second action covered by test_pop_2
    assert adding_to.pop() == 0
コード例 #13
0
def test_remove_2():
    """Fill a DoubleLinkList with (1,2,3), check removal of 3"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.remove(2)
    assert adding_to.pop() == 1
    assert adding_to.shift() == 0
コード例 #14
0
def test_remove_5():
    """Fill a DoubleLinkList with (1,2,3), check removal of 5;
    should result in ValueError"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)
    with pytest.raises(ValueError):
        adding_to.remove(5)
コード例 #15
0
def test_shift_2():
    """Fill a DoubleLinkList with (1,2,3), check second pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.shift()  # First action covered by test_pop_1
    assert adding_to.shift() == 1
コード例 #16
0
def test_pop_3():
    """Fill a DoubleLinkList with (1,2,3), check third pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)

    adding_to.pop()  # First action covered by test_pop_1
    adding_to.pop()  # Second action covered by test_pop_2
    assert adding_to.pop() == 0
コード例 #17
0
def test_pop_1():
    """Fill a DoubleLinkList with (1,2,3), check first pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)
    assert adding_to.pop() == 2
コード例 #18
0
def test_valid_contructor(input, pop_val):
    """Test valid constructor using by dequeuing after instantiation"""
    assert DoubleLinkList(input).pop() == pop_val
コード例 #19
0
def test_empty_constructor():
    """Test valid empty constructor via dequeuing after instantiation"""
    with pytest.raises(IndexError):
        DoubleLinkList(()).pop()
コード例 #20
0
def test_shift_1():
    """Fill a DoubleLinkList with (1,2,3), check first pop"""
    adding_to = DoubleLinkList(())
    for i in xrange(3):
        adding_to.insert(i)
    assert adding_to.shift() == 0
コード例 #21
0
def test_invalid_constructor(input):
    """Test invalid constuctor arguments"""
    with pytest.raises(TypeError):
        DoubleLinkList(input)