コード例 #1
0
    def setUp(self):
        self.list1 = doubly_linked_list.DoublyLinkedList()
        self.list1.append('a')
        self.list1.append('b')
        self.list1.append('c')
        self.list1.append('d')
        self.list1.append('e')

        self.list2 = doubly_linked_list.DoublyLinkedList()
        self.list2.prepend('a')
        self.list2.prepend('b')
        self.list2.prepend('c')
        self.list2.prepend('d')
        self.list2.prepend('e')
コード例 #2
0
 def test_doubly_linked_list_element_get_data(self):
     """
     Test method "get_data".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     self.assertEqual('a', elem.get_data())
コード例 #3
0
 def test_doubly_linked_list_element_copy_equal(self):
     """
     Test operator "copy".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     e_copy = copy.copy(elem)
     self.assertEqual(elem, e_copy)
コード例 #4
0
 def test_doubly_linked_list_prepend(self):
     """
     Test method "prepend".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     a_list.prepend('a')
     a_list.prepend('b')
     a_list.prepend('c')
     self.assertEqual('c', a_list.get_first())
コード例 #5
0
 def test_doubly_linked_list_element_insert_after(self):
     """
     Test method "insert_after".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     elem.insert_after('b')
     self.assertEqual('b', elem.get_next().get_data())
コード例 #6
0
 def test_doubly_linked_list_element_insert_before(self):
     """
     Test method "insert_before".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'b', None, None)
     elem.insert_before('a')
     self.assertEqual('a', elem.get_previous().get_data())
コード例 #7
0
 def test_doubly_linked_list_element_get_next(self):
     """
     Test method "get_next".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem2 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'b', None, None)
     elem1 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, elem2)
     self.assertEqual(elem2, elem1.get_next())
コード例 #8
0
 def test_doubly_linked_list_element_get_previous(self):
     """
     Test method "get_previous".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem1 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     elem2 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'b', elem1, None)
     self.assertEqual(elem1, elem2.get_previous())
コード例 #9
0
 def test_doubly_linked_list_element_not_equal(self):
     """
     Test operator "inequal".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem1 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     elem2 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'b', None, None)
     self.assertNotEqual(elem1, elem2)
コード例 #10
0
 def test_doubly_linked_list_clear(self):
     """
     Test method "clear".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     a_list.append('a')
     a_list.append('b')
     a_list.clear()
     self.assertTrue(a_list.get_head() is
                     None and a_list.get_tail() is None and len(a_list) == 0)
コード例 #11
0
 def test_doubly_linked_list_insert_after_element(self):
     """
     Test method "insert_after_element".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     a_list.append('a')
     a_list.append('b')
     a_list.append('c')
     elem2 = a_list[2]
     a_list.insert_after_element('cc', elem2)
     self.assertEqual('cc', a_list[3].get_data())
コード例 #12
0
 def test_doubly_linked_list_insert_between_elements(self):
     """
     Test method "insert_between_elements".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     a_list.append('a')
     a_list.append('c')
     elem0 = a_list[0]
     elem1 = a_list[1]
     a_list.insert_between_elements('bb', elem0, elem1)
     self.assertEqual('bb', a_list[1].get_data())
コード例 #13
0
 def test_doubly_linked_list_element_insert_between(self):
     """
     Test method "insert_between".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem1 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     elem1.insert_after('c')
     elem2 = elem1.get_next()
     elem1.insert_between('b', elem2)
     self.assertEqual('b', elem1.get_next().get_data())
コード例 #14
0
 def test_doubly_linked_list_element_remove(self):
     """
     Test method "remove".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem1 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     elem1.insert_after('b')
     elem2 = elem1.get_next()
     elem2.insert_after('c')
     elem3 = elem2.get_next()
     elem3.insert_after('d')
     elem2.remove()
     self.assertEqual('c', elem1.get_next().get_data())
コード例 #15
0
 def test_doubly_linked_list_insert_at_index(self):
     """
     Test method "insert_at_index".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     a_list.append('a')
     a_list.append('b')
     a_list.append('c')
     a_list.insert_at('aa', 0)
     a_list.insert_at('bb', 1)
     a_list.insert_at('cc', 2)
     elem0 = a_list[0].get_data()
     elem1 = a_list[1].get_data()
     elem2 = a_list[2].get_data()
     self.assertTrue(elem0 == 'aa' and elem1 == 'bb' and elem2 == 'cc')
コード例 #16
0
 def test_doubly_linked_list_element_insert_at(self):
     """
     Test method "insert_at".
     """
     a_list = doubly_linked_list.DoublyLinkedList()
     elem1 = doubly_linked_list.DoublyLinkedListElement(
         a_list, 'a', None, None)
     elem1.insert_after('b')
     elem2 = elem1.get_next()
     elem2.insert_after('c')
     elem3 = elem2.get_next()
     elem3.insert_after('d')
     elem4 = elem3.get_next()
     elem4.insert_after('e')
     elem5 = elem4.get_next()
     elem5.insert("test")
     self.assertEqual('test', elem1.get_next(
     ).get_next().get_next().get_next().get_data())