class LinkedListTests(unittest.TestCase): def setUp(self): self.list = LinkedList() def test_add_to_head(self): self.list.add_to_head(1) self.assertEqual(self.list.head.value, 1) self.list.add_to_head(2) self.assertEqual(self.list.head.value, 2) def test_contains(self): self.list.add_to_head(1) self.list.add_to_head(2) self.list.add_to_head(10) self.assertTrue(self.list.contains(2)) self.assertTrue(self.list.contains(10)) self.assertFalse(self.list.contains(1000)) def test_empty_reverse(self): self.list.reverse_list(self.list.head, None) self.assertEqual(self.list.head, None) def test_single_reverse(self): self.list.add_to_head(1) self.list.reverse_list(self.list.head, None) self.assertEqual(self.list.head.value, 1) def test_longer_reverse(self): self.list.add_to_head(1) self.list.add_to_head(2) self.list.add_to_head(3) self.list.add_to_head(4) self.list.add_to_head(5) print('LIST', self.list.head.get_next().value) self.assertEqual(self.list.head.value, 5) self.list.reverse_list(self.list.head, None) self.assertEqual(self.list.head.value, 1) self.assertEqual(self.list.head.get_next().value, 2) self.assertEqual(self.list.head.get_next().get_next().value, 3)
class LinkedListTests(unittest.TestCase): start_time = time.time() def setUp(self): self.list = LinkedList() end_time = time.time() print(f"runtime test 1: {end_time - start_time} seconds") start_time = time.time() def test_add_to_head(self): self.list.add_to_head(1) self.assertEqual(self.list.head.value, 1) self.list.add_to_head(2) self.assertEqual(self.list.head.value, 2) end_time = time.time() print(f"runtime test 2: {end_time - start_time} seconds") start_time = time.time() def test_contains(self): self.list.add_to_head(1) self.list.add_to_head(2) self.list.add_to_head(10) self.assertTrue(self.list.contains(2)) self.assertTrue(self.list.contains(10)) self.assertFalse(self.list.contains(1000)) end_time = time.time() print(f"runtime test 3: {end_time - start_time} seconds") start_time = time.time() def test_empty_reverse(self): self.list.reverse_list(self.list.head, None) self.assertEqual(self.list.head, None) end_time = time.time() print(f"runtime test 4: {end_time - start_time} seconds") start_time = time.time() def test_single_reverse(self): self.list.add_to_head(1) self.list.reverse_list(self.list.head, None) self.assertEqual(self.list.head.value, 1) end_time = time.time() print(f"runtime test 5: {end_time - start_time} seconds") start_time = time.time() def test_longer_reverse(self): self.list.add_to_head(1) self.list.add_to_head(2) self.list.add_to_head(3) self.list.add_to_head(4) self.list.add_to_head(5) self.assertEqual(self.list.head.value, 5) self.list.reverse_list(self.list.head, None) self.assertEqual(self.list.head.value, 1) self.assertEqual(self.list.head.get_next().value, 2) self.assertEqual(self.list.head.get_next().get_next().value, 3) end_time = time.time() print(f"runtime test 6: {end_time - start_time} seconds")
class LinkedListTests(unittest.TestCase): def setUp(self): self.list = LinkedList() def test_add_to_head(self): self.list.add_to_head(1) self.assertEqual(self.list.head.value, 1) self.list.add_to_head(2) self.assertEqual(self.list.head.value, 2) def test_contains(self): self.list.add_to_head(1) self.list.add_to_head(2) self.list.add_to_head(10) self.assertTrue(self.list.contains(2)) self.assertTrue(self.list.contains(10)) self.assertFalse(self.list.contains(1000)) def test_empty_reverse(self): self.list.reverse_list() self.assertEqual(self.list.head, None) def test_single_reverse(self): self.list.add_to_head(1) self.list.reverse_list() self.assertEqual(self.list.head.value, 1) def test_longer_reverse(self): self.list.add_to_head(1) self.list.add_to_head(2) self.list.add_to_head(3) self.list.add_to_head(4) self.list.add_to_head(5) self.assertEqual(self.list.head.value, 5) self.list.reverse_list( ) # Changed reverse_list implementation. Object knows it's head self.assertEqual(self.list.head.value, 1) self.assertEqual(self.list.head.get_next().value, 2) self.assertEqual(self.list.head.get_next().get_next().value, 3)