def test_copy(self): origpack = self.get_pack(pack1_sha) try: self.assertSucceeds(origpack.index.check) basename = os.path.join(self.tempdir, 'Elch') write_pack(basename, [(x, '') for x in origpack.iterobjects()], len(origpack)) newpack = Pack(basename) try: self.assertEquals(origpack, newpack) self.assertSucceeds(newpack.index.check) self.assertEquals(origpack.name(), newpack.name()) self.assertEquals(origpack.index.get_pack_checksum(), newpack.index.get_pack_checksum()) wrong_version = origpack.index.version != newpack.index.version orig_checksum = origpack.index.get_stored_checksum() new_checksum = newpack.index.get_stored_checksum() self.assertTrue(wrong_version or orig_checksum == new_checksum) finally: newpack.close() finally: origpack.close()
def test_copy(self): origpack = self.get_pack(pack1_sha) self.assertEquals(True, origpack.idx.check()) write_pack("Elch", [(x, "") for x in origpack.iterobjects()], len(origpack)) newpack = Pack("Elch") self.assertEquals(origpack, newpack) self.assertEquals(True, newpack.idx.check()) self.assertEquals(origpack.name(), newpack.name()) self.assertEquals(origpack.idx.get_pack_checksum(), newpack.idx.get_pack_checksum()) self.assertTrue( (origpack.idx.version != newpack.idx.version) or (origpack.idx.get_stored_checksum() == newpack.idx.get_stored_checksum()) )
def test_copy(self): origpack = self.get_pack(pack1_sha) self.assertEquals(True, origpack.index.check()) write_pack("Elch", [(x, "") for x in origpack.iterobjects()], len(origpack)) newpack = Pack("Elch") self.assertEquals(origpack, newpack) self.assertEquals(True, newpack.index.check()) self.assertEquals(origpack.name(), newpack.name()) self.assertEquals(origpack.index.get_pack_checksum(), newpack.index.get_pack_checksum()) self.assertTrue((origpack.index.version != newpack.index.version) or (origpack.index.get_stored_checksum() == newpack.index.get_stored_checksum()))
def run(self, args): opts, args = getopt(args, "", []) if args == []: print("Usage: dulwich dump-pack FILENAME") sys.exit(1) basename, _ = os.path.splitext(args[0]) x = Pack(basename) print("Object names checksum: %s" % x.name()) print("Checksum: %s" % sha_to_hex(x.get_stored_checksum())) if not x.check(): print("CHECKSUM DOES NOT MATCH") print("Length: %d" % len(x)) for name in x: try: print("\t%s" % x[name]) except KeyError as k: print("\t%s: Unable to resolve base %s" % (name, k)) except ApplyDeltaError as e: print("\t%s: Unable to apply delta: %r" % (name, e))
def test_copy(self): origpack = self.get_pack(pack1_sha) try: self.assertSucceeds(origpack.index.check) basename = os.path.join(self.tempdir, 'Elch') write_pack(basename, origpack.pack_tuples()) newpack = Pack(basename) try: self.assertEqual(origpack, newpack) self.assertSucceeds(newpack.index.check) self.assertEqual(origpack.name(), newpack.name()) self.assertEqual(origpack.index.get_pack_checksum(), newpack.index.get_pack_checksum()) wrong_version = origpack.index.version != newpack.index.version orig_checksum = origpack.index.get_stored_checksum() new_checksum = newpack.index.get_stored_checksum() self.assertTrue(wrong_version or orig_checksum == new_checksum) finally: newpack.close() finally: origpack.close()