summaryrefslogtreecommitdiff
path: root/git/test/test_commit.py
diff options
context:
space:
mode:
authorCory Johns <johnsca@gmail.com>2014-03-03 23:09:39 +0000
committerCory Johns <johnsca@gmail.com>2014-03-03 23:09:44 +0000
commit8005591231c8ae329f0ff320385b190d2ea81df0 (patch)
tree617e7d72a7559ad02bab0495a6d0035b0e44c9c9 /git/test/test_commit.py
parent56d7a9b64b6d768dd118a02c1ed2afb38265c8b9 (diff)
downloadgitpython-8005591231c8ae329f0ff320385b190d2ea81df0.tar.gz
[#7021] Added serialization and test from upstream and fixed test issues
Diffstat (limited to 'git/test/test_commit.py')
-rw-r--r--git/test/test_commit.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/git/test/test_commit.py b/git/test/test_commit.py
index 4a8d8b87..0b7ed9ff 100644
--- a/git/test/test_commit.py
+++ b/git/test/test_commit.py
@@ -13,6 +13,7 @@ from gitdb.util import hex_to_bin
from cStringIO import StringIO
import time
import sys
+import re
def assert_commit_serialization(rwrepo, commit_id, print_performance_info=False):
@@ -273,3 +274,44 @@ class TestCommit(TestBase):
# it appears
cmt.author.__repr__()
+ def test_gpgsig(self):
+ cmt = self.rorepo.commit()
+ cmt._deserialize(open(fixture_path('commit_with_gpgsig')))
+
+ fixture_sig = """-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.11 (GNU/Linux)
+
+iQIcBAABAgAGBQJRk8zMAAoJEG5mS6x6i9IjsTEP/0v2Wx/i7dqyKban6XMIhVdj
+uI0DycfXqnCCZmejidzeao+P+cuK/ZAA/b9fU4MtwkDm2USvnIOrB00W0isxsrED
+sdv6uJNa2ybGjxBolLrfQcWutxGXLZ1FGRhEvkPTLMHHvVriKoNFXcS7ewxP9MBf
+NH97K2wauqA+J4BDLDHQJgADCOmLrGTAU+G1eAXHIschDqa6PZMH5nInetYZONDh
+3SkOOv8VKFIF7gu8X7HC+7+Y8k8U0TW0cjlQ2icinwCc+KFoG6GwXS7u/VqIo1Yp
+Tack6sxIdK7NXJhV5gAeAOMJBGhO0fHl8UUr96vGEKwtxyZhWf8cuIPOWLk06jA0
+g9DpLqmy/pvyRfiPci+24YdYRBua/vta+yo/Lp85N7Hu/cpIh+q5WSLvUlv09Dmo
+TTTG8Hf6s3lEej7W8z2xcNZoB6GwXd8buSDU8cu0I6mEO9sNtAuUOHp2dBvTA6cX
+PuQW8jg3zofnx7CyNcd3KF3nh2z8mBcDLgh0Q84srZJCPRuxRcp9ylggvAG7iaNd
+XMNvSK8IZtWLkx7k3A3QYt1cN4y1zdSHLR2S+BVCEJea1mvUE+jK5wiB9S4XNtKm
+BX/otlTa8pNE3fWYBxURvfHnMY4i3HQT7Bc1QjImAhMnyo2vJk4ORBJIZ1FTNIhJ
+JzJMZDRLQLFvnzqZuCjE
+=przd
+-----END PGP SIGNATURE-----"""
+ self.assertEqual(cmt.gpgsig, fixture_sig)
+ self.assertIn('NTB: Multiple NTB client fix', cmt.message)
+ cmt.gpgsig = "<test\ndummy\nsig>"
+ self.assertNotEqual(cmt.gpgsig, fixture_sig)
+
+ cstream = StringIO()
+ cmt._serialize(cstream)
+ value = cstream.getvalue()
+ self.assertRegexpMatches(value, re.compile(r"^gpgsig <test\n dummy\n sig>$", re.MULTILINE))
+
+ cstream.seek(0)
+ cmt.gpgsig = None
+ cmt._deserialize(cstream)
+ self.assertEqual(cmt.gpgsig, "<test\ndummy\nsig>")
+
+ cmt.gpgsig = None
+ cstream = StringIO()
+ cmt._serialize(cstream)
+ value = cstream.getvalue()
+ self.assertNotRegexpMatches(value, re.compile(r"^gpgsig ", re.MULTILINE))