Esempio n. 1
0
 def test_insert_and_remove_list( self ):
     ll = DoubleLinkedList()
     ll.add( 50 )
     ll.addEnd( 100 )
     ll.insert( 150, ll.search(50) ) # insert in middle
     self.assertEqual( ll.size(), 3 )
     ll.remove( ll.search( 150 ) )
     self.assertEqual( ll.size(), 2 )
     self.assertEqual( ll.toList(), [50, 100] )
Esempio n. 2
0
 def test_insert_remove_and_reverse_list( self ):
     ll = DoubleLinkedList()
     ll.add( 50 )
     ll.addEnd( 100 )
     ll.insert( 150, ll.search(50) ) # insert in middle
     self.assertEqual( ll.size(), 3 )
     ll.remove( ll.search( 50 ) )
     self.assertEqual( ll.size(), 2 )
     ll.reverse()
     # NOTE: This test is testing that you don't forget to
     # update next / prev properly when inserting..
     self.assertEqual( ll.toList(), [100, 150] )
Esempio n. 3
0
 def test_remove_entire_list( self ):
     ll = DoubleLinkedList()
     ll.add( 50 )
     ll.add( 55 )
     ll.add( 60 )
     ll.add( 65 )
     ll.remove( ll.search(65) )
     self.assertEqual( ll.size(), 3 )
     ll.remove( ll.search(55) )
     self.assertEqual( ll.size(), 2 )
     ll.remove( ll.search(50) )
     self.assertEqual( ll.size(), 1 )
     ll.remove( ll.search(60) )
     self.assertEqual( ll.size(), 0 )
Esempio n. 4
0
 def test_add_empty_list( self ):
     ll = DoubleLinkedList()
     ll.addEnd( 50 )
     self.assertEqual( ll.size(), 1 )
     self.assertNotEqual( ll.head, None )
     self.assertNotEqual( ll.tail, None )
     self.assertEqual( ll.head, ll.tail )
Esempio n. 5
0
 def test_remove_middle_list( self ):
     ll = DoubleLinkedList()
     ll.addEnd( 50 )
     ll.addEnd( 55 )
     ll.addEnd( 60 )
     ll.addEnd( 65 )
     ll.remove( ll.search(55) )
     self.assertEqual( ll.size(), 3 )
Esempio n. 6
0
 def test_remove_end_list( self ):
     ll = DoubleLinkedList()
     ll.addEnd( 50 )
     ll.addEnd( 55 )
     ll.addEnd( 60 )
     ll.addEnd( 65 )
     ll.remove( ll.search(65) )
     self.assertEqual( ll.size(), 3 )
     self.assertNotEqual( ll.tail, None )
     self.assertEqual( ll.tail.getData(), 60 )
Esempio n. 7
0
 def test_remove_head_list( self ):
     ll = DoubleLinkedList()
     ll.addEnd( 50 )
     ll.addEnd( 55 )
     ll.addEnd( 60 )
     ll.addEnd( 65 )
     ll.remove( ll.search(50) )
     self.assertEqual( ll.size(), 3 )
     self.assertNotEqual( ll.head, None )
     self.assertEqual( ll.head.getData(), 55 )
Esempio n. 8
0
 def test_insert_end_nonempty_list( self ):
     ll = DoubleLinkedList()
     ll.add( 50 )
     ll.insert( 100, ll.search(50) )
     self.assertEqual( ll.size(), 2 )
Esempio n. 9
0
 def test_create_empty_list( self ):
     ll = DoubleLinkedList()
     self.assertEqual( ll.size(), 0 )
     self.assertEqual( ll.head, None )
     self.assertEqual( ll.tail, None )
Esempio n. 10
0
 def test_add_nonempty_list( self ):
     ll = DoubleLinkedList()
     ll.add( 50 )
     ll.add( 100 )
     self.assertEqual( ll.size(), 2 )