|
@@ -315,6 +315,52 @@ class CommitSerializationTests(TestCase):
|
|
|
d._deserialize(c.as_raw_chunks())
|
|
|
self.assertEqual(c, d)
|
|
|
|
|
|
+ def test_serialize_gpgsig(self):
|
|
|
+ commit = self.make_commit(gpgsig="""-----BEGIN PGP SIGNATURE-----
|
|
|
+Version: GnuPG v1
|
|
|
+
|
|
|
+iQIcBAABCgAGBQJULCdfAAoJEACAbyvXKaRXuKwP/RyP9PA49uAvu8tQVCC/uBa8
|
|
|
+vi975+xvO14R8Pp8k2nps7lSxCdtCd+xVT1VRHs0wNhOZo2YCVoU1HATkPejqSeV
|
|
|
+NScTHcxnk4/+bxyfk14xvJkNp7FlQ3npmBkA+lbV0Ubr33rvtIE5jiJPyz+SgWAg
|
|
|
+xdBG2TojV0squj00GoH/euK6aX7GgZtwdtpTv44haCQdSuPGDcI4TORqR6YSqvy3
|
|
|
+GPE+3ZqXPFFb+KILtimkxitdwB7CpwmNse2vE3rONSwTvi8nq3ZoQYNY73CQGkUy
|
|
|
+qoFU0pDtw87U3niFin1ZccDgH0bB6624sLViqrjcbYJeg815Htsu4rmzVaZADEVC
|
|
|
+XhIO4MThebusdk0AcNGjgpf3HRHk0DPMDDlIjm+Oao0cqovvF6VyYmcb0C+RmhJj
|
|
|
+dodLXMNmbqErwTk3zEkW0yZvNIYXH7m9SokPCZa4eeIM7be62X6h1mbt0/IU6Th+
|
|
|
+v18fS0iTMP/Viug5und+05C/v04kgDo0CPphAbXwWMnkE4B6Tl9sdyUYXtvQsL7x
|
|
|
+0+WP1gL27ANqNZiI07Kz/BhbBAQI/+2TFT7oGr0AnFPQ5jHp+3GpUf6OKuT1wT3H
|
|
|
+ND189UFuRuubxb42vZhpcXRbqJVWnbECTKVUPsGZqat3enQUB63uM4i6/RdONDZA
|
|
|
+fDeF1m4qYs+cUXKNUZ03
|
|
|
+=X6RT
|
|
|
+-----END PGP SIGNATURE-----""")
|
|
|
+ self.maxDiff = None
|
|
|
+ self.assertMultiLineEqual("""\
|
|
|
+tree d80c186a03f423a81b39df39dc87fd269736ca86
|
|
|
+parent ab64bbdcc51b170d21588e5c5d391ee5c0c96dfd
|
|
|
+parent 4cffe90e0a41ad3f5190079d7c8f036bde29cbe6
|
|
|
+author James Westby <jw+debian@jameswestby.net> 1174773719 +0000
|
|
|
+committer James Westby <jw+debian@jameswestby.net> 1174773719 +0000
|
|
|
+gpgsig -----BEGIN PGP SIGNATURE-----
|
|
|
+ Version: GnuPG v1
|
|
|
+
|
|
|
+ iQIcBAABCgAGBQJULCdfAAoJEACAbyvXKaRXuKwP/RyP9PA49uAvu8tQVCC/uBa8
|
|
|
+ vi975+xvO14R8Pp8k2nps7lSxCdtCd+xVT1VRHs0wNhOZo2YCVoU1HATkPejqSeV
|
|
|
+ NScTHcxnk4/+bxyfk14xvJkNp7FlQ3npmBkA+lbV0Ubr33rvtIE5jiJPyz+SgWAg
|
|
|
+ xdBG2TojV0squj00GoH/euK6aX7GgZtwdtpTv44haCQdSuPGDcI4TORqR6YSqvy3
|
|
|
+ GPE+3ZqXPFFb+KILtimkxitdwB7CpwmNse2vE3rONSwTvi8nq3ZoQYNY73CQGkUy
|
|
|
+ qoFU0pDtw87U3niFin1ZccDgH0bB6624sLViqrjcbYJeg815Htsu4rmzVaZADEVC
|
|
|
+ XhIO4MThebusdk0AcNGjgpf3HRHk0DPMDDlIjm+Oao0cqovvF6VyYmcb0C+RmhJj
|
|
|
+ dodLXMNmbqErwTk3zEkW0yZvNIYXH7m9SokPCZa4eeIM7be62X6h1mbt0/IU6Th+
|
|
|
+ v18fS0iTMP/Viug5und+05C/v04kgDo0CPphAbXwWMnkE4B6Tl9sdyUYXtvQsL7x
|
|
|
+ 0+WP1gL27ANqNZiI07Kz/BhbBAQI/+2TFT7oGr0AnFPQ5jHp+3GpUf6OKuT1wT3H
|
|
|
+ ND189UFuRuubxb42vZhpcXRbqJVWnbECTKVUPsGZqat3enQUB63uM4i6/RdONDZA
|
|
|
+ fDeF1m4qYs+cUXKNUZ03
|
|
|
+ =X6RT
|
|
|
+ -----END PGP SIGNATURE-----
|
|
|
+
|
|
|
+Merge ../b
|
|
|
+""", commit.as_raw_string())
|
|
|
+
|
|
|
def test_serialize_mergetag(self):
|
|
|
tag = make_object(
|
|
|
Tag, object=(Commit, "a38d6181ff27824c79fc7df825164a212eff6a3f"),
|
|
@@ -532,6 +578,50 @@ class CommitParseTests(ShaFileCheckTests):
|
|
|
else:
|
|
|
self.assertCheckFails(Commit, text)
|
|
|
|
|
|
+ def test_parse_gpgsig(self):
|
|
|
+ c = Commit.from_string("""tree aaff74984cccd156a469afa7d9ab10e4777beb24
|
|
|
+author Jelmer Vernooij <jelmer@samba.org> 1412179807 +0200
|
|
|
+committer Jelmer Vernooij <jelmer@samba.org> 1412179807 +0200
|
|
|
+gpgsig -----BEGIN PGP SIGNATURE-----
|
|
|
+ Version: GnuPG v1
|
|
|
+
|
|
|
+ iQIcBAABCgAGBQJULCdfAAoJEACAbyvXKaRXuKwP/RyP9PA49uAvu8tQVCC/uBa8
|
|
|
+ vi975+xvO14R8Pp8k2nps7lSxCdtCd+xVT1VRHs0wNhOZo2YCVoU1HATkPejqSeV
|
|
|
+ NScTHcxnk4/+bxyfk14xvJkNp7FlQ3npmBkA+lbV0Ubr33rvtIE5jiJPyz+SgWAg
|
|
|
+ xdBG2TojV0squj00GoH/euK6aX7GgZtwdtpTv44haCQdSuPGDcI4TORqR6YSqvy3
|
|
|
+ GPE+3ZqXPFFb+KILtimkxitdwB7CpwmNse2vE3rONSwTvi8nq3ZoQYNY73CQGkUy
|
|
|
+ qoFU0pDtw87U3niFin1ZccDgH0bB6624sLViqrjcbYJeg815Htsu4rmzVaZADEVC
|
|
|
+ XhIO4MThebusdk0AcNGjgpf3HRHk0DPMDDlIjm+Oao0cqovvF6VyYmcb0C+RmhJj
|
|
|
+ dodLXMNmbqErwTk3zEkW0yZvNIYXH7m9SokPCZa4eeIM7be62X6h1mbt0/IU6Th+
|
|
|
+ v18fS0iTMP/Viug5und+05C/v04kgDo0CPphAbXwWMnkE4B6Tl9sdyUYXtvQsL7x
|
|
|
+ 0+WP1gL27ANqNZiI07Kz/BhbBAQI/+2TFT7oGr0AnFPQ5jHp+3GpUf6OKuT1wT3H
|
|
|
+ ND189UFuRuubxb42vZhpcXRbqJVWnbECTKVUPsGZqat3enQUB63uM4i6/RdONDZA
|
|
|
+ fDeF1m4qYs+cUXKNUZ03
|
|
|
+ =X6RT
|
|
|
+ -----END PGP SIGNATURE-----
|
|
|
+
|
|
|
+foo
|
|
|
+""")
|
|
|
+ self.assertEquals("foo\n", c.message)
|
|
|
+ self.assertEquals([], c.extra)
|
|
|
+ self.assertEquals("""-----BEGIN PGP SIGNATURE-----
|
|
|
+Version: GnuPG v1
|
|
|
+
|
|
|
+iQIcBAABCgAGBQJULCdfAAoJEACAbyvXKaRXuKwP/RyP9PA49uAvu8tQVCC/uBa8
|
|
|
+vi975+xvO14R8Pp8k2nps7lSxCdtCd+xVT1VRHs0wNhOZo2YCVoU1HATkPejqSeV
|
|
|
+NScTHcxnk4/+bxyfk14xvJkNp7FlQ3npmBkA+lbV0Ubr33rvtIE5jiJPyz+SgWAg
|
|
|
+xdBG2TojV0squj00GoH/euK6aX7GgZtwdtpTv44haCQdSuPGDcI4TORqR6YSqvy3
|
|
|
+GPE+3ZqXPFFb+KILtimkxitdwB7CpwmNse2vE3rONSwTvi8nq3ZoQYNY73CQGkUy
|
|
|
+qoFU0pDtw87U3niFin1ZccDgH0bB6624sLViqrjcbYJeg815Htsu4rmzVaZADEVC
|
|
|
+XhIO4MThebusdk0AcNGjgpf3HRHk0DPMDDlIjm+Oao0cqovvF6VyYmcb0C+RmhJj
|
|
|
+dodLXMNmbqErwTk3zEkW0yZvNIYXH7m9SokPCZa4eeIM7be62X6h1mbt0/IU6Th+
|
|
|
+v18fS0iTMP/Viug5und+05C/v04kgDo0CPphAbXwWMnkE4B6Tl9sdyUYXtvQsL7x
|
|
|
+0+WP1gL27ANqNZiI07Kz/BhbBAQI/+2TFT7oGr0AnFPQ5jHp+3GpUf6OKuT1wT3H
|
|
|
+ND189UFuRuubxb42vZhpcXRbqJVWnbECTKVUPsGZqat3enQUB63uM4i6/RdONDZA
|
|
|
+fDeF1m4qYs+cUXKNUZ03
|
|
|
+=X6RT
|
|
|
+-----END PGP SIGNATURE-----""", c.gpgsig)
|
|
|
+
|
|
|
|
|
|
_TREE_ITEMS = {
|
|
|
'a.c': (0o100755, 'd80c186a03f423a81b39df39dc87fd269736ca86'),
|