From d534a5537fd317cd769fed54eceb8248777db701 Mon Sep 17 00:00:00 2001 From: Gavin Mak Date: Wed, 13 Aug 2025 23:42:00 -0700 Subject: sync: Fix missing error details in interleaved summary When checkout errors occurred in interleaved sync, they were wrapped in a SyncError with no message, causing blank lines in the final summary. Refactor _SyncResult to hold a list of exceptions, ensuring the original error messages are propagated correctly. Bug: 438178765 Change-Id: Ic25e515068959829cb6290cfd9e4c2d3963bbbea Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/498342 Reviewed-by: Scott Lee Tested-by: Gavin Mak Commit-Queue: Gavin Mak --- tests/test_subcmds_sync.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'tests/test_subcmds_sync.py') diff --git a/tests/test_subcmds_sync.py b/tests/test_subcmds_sync.py index 940c69fc..6c9cc9ab 100644 --- a/tests/test_subcmds_sync.py +++ b/tests/test_subcmds_sync.py @@ -810,8 +810,8 @@ class InterleavedSyncTest(unittest.TestCase): result = result_obj.results[0] self.assertTrue(result.fetch_success) self.assertTrue(result.checkout_success) - self.assertIsNone(result.fetch_error) - self.assertIsNone(result.checkout_error) + self.assertEqual(result.fetch_errors, []) + self.assertEqual(result.checkout_errors, []) project.Sync_NetworkHalf.assert_called_once() project.Sync_LocalHalf.assert_called_once() @@ -833,8 +833,8 @@ class InterleavedSyncTest(unittest.TestCase): self.assertFalse(result.fetch_success) self.assertFalse(result.checkout_success) - self.assertEqual(result.fetch_error, fetch_error) - self.assertIsNone(result.checkout_error) + self.assertEqual(result.fetch_errors, [fetch_error]) + self.assertEqual(result.checkout_errors, []) project.Sync_NetworkHalf.assert_called_once() project.Sync_LocalHalf.assert_not_called() @@ -871,7 +871,7 @@ class InterleavedSyncTest(unittest.TestCase): self.assertFalse(result.fetch_success) self.assertFalse(result.checkout_success) - self.assertEqual(result.fetch_error, fetch_error) + self.assertEqual(result.fetch_errors, [fetch_error]) project.Sync_NetworkHalf.assert_called_once() project.Sync_LocalHalf.assert_not_called() @@ -893,8 +893,8 @@ class InterleavedSyncTest(unittest.TestCase): self.assertTrue(result.fetch_success) self.assertFalse(result.checkout_success) - self.assertIsNone(result.fetch_error) - self.assertEqual(result.checkout_error, checkout_error) + self.assertEqual(result.fetch_errors, []) + self.assertEqual(result.checkout_errors, [checkout_error]) project.Sync_NetworkHalf.assert_called_once() project.Sync_LocalHalf.assert_called_once() -- cgit v1.2.3-54-g00ecf