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
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
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
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)
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()
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
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
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
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
def test_valid_contructor(input, pop_val): """Test valid constructor using by dequeuing after instantiation""" assert DoubleLinkList(input).pop() == pop_val
def test_empty_constructor(): """Test valid empty constructor via dequeuing after instantiation""" with pytest.raises(IndexError): DoubleLinkList(()).pop()
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
def test_invalid_constructor(input): """Test invalid constuctor arguments""" with pytest.raises(TypeError): DoubleLinkList(input)