[#6068] fix paged_diffs return value when no DiffInfoDoc found
diff --git a/Allura/allura/model/repo.py b/Allura/allura/model/repo.py
index 4d396b8..d8b06be 100644
--- a/Allura/allura/model/repo.py
+++ b/Allura/allura/model/repo.py
@@ -270,7 +270,7 @@
def paged_diffs(self, start=0, end=None):
di = DiffInfoDoc.m.get(_id=self._id)
if di is None:
- return Object(added=[], removed=[], changed=[], copied=[])
+ return Object(added=[], removed=[], changed=[], copied=[], total=0)
added = []
removed = []
changed = []
diff --git a/ForgeSVN/forgesvn/tests/model/test_repository.py b/ForgeSVN/forgesvn/tests/model/test_repository.py
index 676a887..09745e7 100644
--- a/ForgeSVN/forgesvn/tests/model/test_repository.py
+++ b/ForgeSVN/forgesvn/tests/model/test_repository.py
@@ -209,7 +209,11 @@
expected = dict(
copied=[], changed=[], removed=[],
added=['/a/b', '/a/b/c'], total=4)
- self.assertEqual(expected, entry.paged_diffs(start=1, end=3))
+ actual = entry.paged_diffs(start=1, end=3)
+ self.assertEqual(expected, actual)
+
+ empty = M.repo.Commit().paged_diffs()
+ self.assertEqual(sorted(actual.keys()), sorted(empty.keys()))
def test_diff_create_file(self):
entry = self.repo.log(1, limit=1)[0]