blob: c5803e4e738e15587a0d1fa472c30526829fb71b [file] [log] [blame]
Sybren A. Stüvelff3a1d02011-06-20 00:13:53 +02001'''Tests string operations.'''
2
3import unittest
4
5import rsa
6
7class StringTest(unittest.TestCase):
8
9 def setUp(self):
10 (self.pub, self.priv) = rsa.newkeys(64)
11
12 def test_enc_dec(self):
13
14 # TODO: test with unicode strings and non-ascii chars
15 message = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
16 print "\tMessage: %s" % message
17
18 encrypted = rsa.encrypt(message, self.pub)
19 print "\tEncrypted: %s" % encrypted
20
21 decrypted = rsa.decrypt(encrypted, self.priv)
22 print "\tDecrypted: %s" % decrypted
23
24 self.assertEqual(message, decrypted)
25
26 def test_sign_verify(self):
27
28 # TODO: test with unicode strings and non-ascii chars
29 message = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
30
31 signed = rsa.sign(message, self.priv)
32 print "\tSigned: %s" % signed
33
34 verified = rsa.verify(signed, self.pub)
35 print "\tVerified: %s" % verified
36
37 self.assertEqual(message, verified)
38