I have unit tests:
import unittest class TestFail(unittest.TestCase): def testFail(self): data = range(5) self.assertEqual(data, insertion_sorting(data)) class TestSuccess(unittest.TestCase): def testSuccess(self): data = range(5) self.assertEqual([0,1,2,3,4], insertion_sorting(data)) def insertion_sorting(data): result = [] while len(data): min_index = 0 for i in range(len(data)): if data[i] < data[min_index]: min_index = i result.append(data[min_index]) del data[min_index] return result if __name__ == '__main__': unittest.main()
TestSuccess completed successfully, but TestFail raises:
AssertionError: Lists are different: []! = [0, 1, 2, 3, 4]
The second list contains 5 additional items. First optional item 0: 0
Could you explain to me why TestSuccess completed successfully, but TestFail is not?
source share