瀏覽代碼

Fix more index errors.

Jelmer Vernooij 16 年之前
父節點
當前提交
e63a9ce00d
共有 2 個文件被更改,包括 7 次插入4 次删除
  1. 1 1
      dulwich/pack.py
  2. 6 3
      dulwich/tests/test_pack.py

+ 1 - 1
dulwich/pack.py

@@ -346,6 +346,6 @@ def write_pack_index(filename, entries, pack_checksum):
     for (offset, name) in entries:
         write(struct.pack(">L20s", offset, name))
     assert len(pack_checksum) == 20
-    f.write(pack_checksum)
+    write(pack_checksum)
     f.write(sha1.digest())
     f.close()

+ 6 - 3
dulwich/tests/test_pack.py

@@ -118,6 +118,9 @@ class TestMultiOrd(unittest.TestCase):
 class TestPackIndexWriting(unittest.TestCase):
 
     def test_empty(self):
-        write_pack_index("empty.idx", [], 
-                'r\x19\x80\xe8f\xaf\x9a_\x93\xadgAD\xe1E\x9b\x8b\xa3\xe7\xb7')
-        PackIndex("empty.idx").check()
+        pack_checksum = 'r\x19\x80\xe8f\xaf\x9a_\x93\xadgAD\xe1E\x9b\x8b\xa3\xe7\xb7'
+        write_pack_index("empty.idx", [], pack_checksum)
+        idx = PackIndex("empty.idx")
+        self.assertTrue(idx.check())
+        self.assertEquals(idx.get_stored_checksums()[0], pack_checksum)
+        self.assertEquals(0, len(idx))