~launchpad-pqm/pygpgme/devel

« back to all changes in this revision

Viewing changes to gpgme/tests/test_keys.py

  • Committer: James Henstridge
  • Date: 2006-01-19 10:16:32 UTC
  • Revision ID: james.henstridge@canonical.com-20060119101632-7b8d49f01fbaeaf9
Add some tests to verify that the test keys can be loaded correctly

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import unittest
 
2
 
 
3
import gpgme
 
4
from gpgme.tests.util import GpgHomeTestCase
 
5
 
 
6
class ContextTestCase(GpgHomeTestCase):
 
7
 
 
8
    import_keys = ['key1.pub', 'key2.pub', 'revoked.pub', 'signonly.pub']
 
9
 
 
10
    def test_key1(self):
 
11
        ctx = gpgme.Context()
 
12
        key = ctx.get_key('E79A842DA34A1CA383F64A1546BB55F0885C65A4')
 
13
        self.assertEqual(key.revoked, False)
 
14
        self.assertEqual(key.expired, False)
 
15
        self.assertEqual(key.invalid, False)
 
16
        self.assertEqual(key.can_encrypt, True)
 
17
        self.assertEqual(key.can_sign, True)
 
18
        self.assertEqual(key.can_certify, True)
 
19
        self.assertEqual(key.secret, False)
 
20
        self.assertEqual(key.can_authenticate, False)
 
21
        self.assertEqual(key.protocol, gpgme.PROTOCOL_OpenPGP)
 
22
        self.assertEqual(len(key.subkeys), 2)
 
23
        self.assertEqual(len(key.uids), 1)
 
24
 
 
25
        self.assertEqual(key.subkeys[0].revoked, False)
 
26
        self.assertEqual(key.subkeys[0].expired, False)
 
27
        self.assertEqual(key.subkeys[0].disabled, False)
 
28
        self.assertEqual(key.subkeys[0].invalid, False)
 
29
        self.assertEqual(key.subkeys[0].can_encrypt, False)
 
30
        self.assertEqual(key.subkeys[0].can_sign, True)
 
31
        self.assertEqual(key.subkeys[0].can_certify, True)
 
32
        self.assertEqual(key.subkeys[0].secret, False)
 
33
        self.assertEqual(key.subkeys[0].can_authenticate, False)
 
34
        self.assertEqual(key.subkeys[0].pubkey_algo, gpgme.PK_DSA)
 
35
        self.assertEqual(key.subkeys[0].length, 1024)
 
36
        self.assertEqual(key.subkeys[0].keyid, '46BB55F0885C65A4')
 
37
        self.assertEqual(key.subkeys[0].fpr,
 
38
                         'E79A842DA34A1CA383F64A1546BB55F0885C65A4')
 
39
        self.assertEqual(key.subkeys[0].timestamp, 1137568227)
 
40
        self.assertEqual(key.subkeys[0].expires, 0)
 
41
 
 
42
        self.assertEqual(key.subkeys[1].revoked, False)
 
43
        self.assertEqual(key.subkeys[1].expired, False)
 
44
        self.assertEqual(key.subkeys[1].disabled, False)
 
45
        self.assertEqual(key.subkeys[1].invalid, False)
 
46
        self.assertEqual(key.subkeys[1].can_encrypt, True)
 
47
        self.assertEqual(key.subkeys[1].can_sign, False)
 
48
        self.assertEqual(key.subkeys[1].can_certify, False)
 
49
        self.assertEqual(key.subkeys[1].secret, False)
 
50
        self.assertEqual(key.subkeys[1].can_authenticate, False)
 
51
        self.assertEqual(key.subkeys[1].pubkey_algo, gpgme.PK_ELG_E)
 
52
        self.assertEqual(key.subkeys[1].length, 2048)
 
53
        self.assertEqual(key.subkeys[1].keyid, '659A6AC69BC3B085')
 
54
        self.assertEqual(key.subkeys[1].fpr, None)
 
55
        self.assertEqual(key.subkeys[1].timestamp, 1137568234)
 
56
        self.assertEqual(key.subkeys[1].expires, 0)
 
57
 
 
58
        self.assertEqual(key.uids[0].revoked, False)
 
59
        self.assertEqual(key.uids[0].invalid, False)
 
60
        self.assertEqual(key.uids[0].validity, 0)
 
61
        self.assertEqual(key.uids[0].uid, 'Key 1 <key1@example.org>')
 
62
        self.assertEqual(key.uids[0].name, 'Key 1')
 
63
        self.assertEqual(key.uids[0].email, 'key1@example.org')
 
64
        self.assertEqual(key.uids[0].comment, '')
 
65
 
 
66
    def test_key2(self):
 
67
        ctx = gpgme.Context()
 
68
        key = ctx.get_key('93C2240D6B8AA10AB28F701D2CF46B7FC97E6B0F')
 
69
        self.assertEqual(key.revoked, False)
 
70
        self.assertEqual(key.expired, False)
 
71
        self.assertEqual(key.invalid, False)
 
72
        self.assertEqual(key.can_encrypt, True)
 
73
        self.assertEqual(key.can_sign, True)
 
74
        self.assertEqual(key.can_certify, True)
 
75
        self.assertEqual(key.secret, False)
 
76
        self.assertEqual(key.can_authenticate, False)
 
77
        self.assertEqual(key.protocol, gpgme.PROTOCOL_OpenPGP)
 
78
        self.assertEqual(len(key.subkeys), 2)
 
79
        self.assertEqual(len(key.uids), 1)
 
80
 
 
81
        self.assertEqual(key.subkeys[0].revoked, False)
 
82
        self.assertEqual(key.subkeys[0].expired, False)
 
83
        self.assertEqual(key.subkeys[0].disabled, False)
 
84
        self.assertEqual(key.subkeys[0].invalid, False)
 
85
        self.assertEqual(key.subkeys[0].can_encrypt, False)
 
86
        self.assertEqual(key.subkeys[0].can_sign, True)
 
87
        self.assertEqual(key.subkeys[0].can_certify, True)
 
88
        self.assertEqual(key.subkeys[0].secret, False)
 
89
        self.assertEqual(key.subkeys[0].can_authenticate, False)
 
90
        self.assertEqual(key.subkeys[0].pubkey_algo, gpgme.PK_RSA)
 
91
        self.assertEqual(key.subkeys[0].length, 4096)
 
92
        self.assertEqual(key.subkeys[0].keyid, '2CF46B7FC97E6B0F')
 
93
        self.assertEqual(key.subkeys[0].fpr,
 
94
                         '93C2240D6B8AA10AB28F701D2CF46B7FC97E6B0F')
 
95
        self.assertEqual(key.subkeys[0].timestamp, 1137568343)
 
96
        self.assertEqual(key.subkeys[0].expires, 0)
 
97
 
 
98
        self.assertEqual(key.subkeys[1].revoked, False)
 
99
        self.assertEqual(key.subkeys[1].expired, False)
 
100
        self.assertEqual(key.subkeys[1].disabled, False)
 
101
        self.assertEqual(key.subkeys[1].invalid, False)
 
102
        self.assertEqual(key.subkeys[1].can_encrypt, True)
 
103
        self.assertEqual(key.subkeys[1].can_sign, False)
 
104
        self.assertEqual(key.subkeys[1].can_certify, False)
 
105
        self.assertEqual(key.subkeys[1].secret, False)
 
106
        self.assertEqual(key.subkeys[1].can_authenticate, False)
 
107
        self.assertEqual(key.subkeys[1].pubkey_algo, gpgme.PK_RSA)
 
108
        self.assertEqual(key.subkeys[1].length, 4096)
 
109
        self.assertEqual(key.subkeys[1].keyid, 'A95221D00DCBDD64')
 
110
        self.assertEqual(key.subkeys[1].fpr, None)
 
111
        self.assertEqual(key.subkeys[1].timestamp, 1137568395)
 
112
        self.assertEqual(key.subkeys[1].expires, 0)
 
113
 
 
114
        self.assertEqual(key.uids[0].revoked, False)
 
115
        self.assertEqual(key.uids[0].invalid, False)
 
116
        self.assertEqual(key.uids[0].validity, 0)
 
117
        self.assertEqual(key.uids[0].uid, 'Key 2 <key2@example.org>')
 
118
        self.assertEqual(key.uids[0].name, 'Key 2')
 
119
        self.assertEqual(key.uids[0].email, 'key2@example.org')
 
120
        self.assertEqual(key.uids[0].comment, '')
 
121
 
 
122
    def test_revoked(self):
 
123
        ctx = gpgme.Context()
 
124
        key = ctx.get_key('B6525A39EB81F88B4D2CFB3E2EF658C987754368')
 
125
        self.assertEqual(key.revoked, True)
 
126
        self.assertEqual(key.expired, False)
 
127
        self.assertEqual(key.invalid, False)
 
128
        self.assertEqual(key.can_encrypt, False)
 
129
        self.assertEqual(key.can_sign, True)
 
130
        self.assertEqual(key.can_certify, True)
 
131
        self.assertEqual(key.secret, False)
 
132
        self.assertEqual(key.can_authenticate, False)
 
133
        self.assertEqual(key.protocol, gpgme.PROTOCOL_OpenPGP)
 
134
        self.assertEqual(len(key.subkeys), 2)
 
135
        self.assertEqual(len(key.uids), 1)
 
136
 
 
137
        self.assertEqual(key.subkeys[0].revoked, True)
 
138
        self.assertEqual(key.subkeys[0].expired, False)
 
139
        self.assertEqual(key.subkeys[0].disabled, False)
 
140
        self.assertEqual(key.subkeys[0].invalid, False)
 
141
        self.assertEqual(key.subkeys[0].can_encrypt, False)
 
142
        self.assertEqual(key.subkeys[0].can_sign, True)
 
143
        self.assertEqual(key.subkeys[0].can_certify, True)
 
144
        self.assertEqual(key.subkeys[0].secret, False)
 
145
        self.assertEqual(key.subkeys[0].can_authenticate, False)
 
146
        self.assertEqual(key.subkeys[0].pubkey_algo, gpgme.PK_DSA)
 
147
        self.assertEqual(key.subkeys[0].length, 1024)
 
148
        self.assertEqual(key.subkeys[0].keyid, '2EF658C987754368')
 
149
        self.assertEqual(key.subkeys[0].fpr,
 
150
                         'B6525A39EB81F88B4D2CFB3E2EF658C987754368')
 
151
        self.assertEqual(key.subkeys[0].timestamp, 1137569043)
 
152
        self.assertEqual(key.subkeys[0].expires, 0)
 
153
 
 
154
        self.assertEqual(key.subkeys[1].revoked, True)
 
155
        self.assertEqual(key.subkeys[1].expired, False)
 
156
        self.assertEqual(key.subkeys[1].disabled, False)
 
157
        self.assertEqual(key.subkeys[1].invalid, False)
 
158
        self.assertEqual(key.subkeys[1].can_encrypt, True)
 
159
        self.assertEqual(key.subkeys[1].can_sign, False)
 
160
        self.assertEqual(key.subkeys[1].can_certify, False)
 
161
        self.assertEqual(key.subkeys[1].secret, False)
 
162
        self.assertEqual(key.subkeys[1].can_authenticate, False)
 
163
        self.assertEqual(key.subkeys[1].pubkey_algo, gpgme.PK_ELG_E)
 
164
        self.assertEqual(key.subkeys[1].length, 1024)
 
165
        self.assertEqual(key.subkeys[1].keyid, 'E50B59CF50CE4D54')
 
166
        self.assertEqual(key.subkeys[1].fpr, None)
 
167
        self.assertEqual(key.subkeys[1].timestamp, 1137569047)
 
168
        self.assertEqual(key.subkeys[1].expires, 0)
 
169
 
 
170
        self.assertEqual(key.uids[0].revoked, True)
 
171
        self.assertEqual(key.uids[0].invalid, False)
 
172
        self.assertEqual(key.uids[0].validity, 0)
 
173
        self.assertEqual(key.uids[0].uid, 'Revoked <revoked@example.org>')
 
174
        self.assertEqual(key.uids[0].name, 'Revoked')
 
175
        self.assertEqual(key.uids[0].email, 'revoked@example.org')
 
176
        self.assertEqual(key.uids[0].comment, '')
 
177
 
 
178
    def test_signonly(self):
 
179
        ctx = gpgme.Context()
 
180
        key = ctx.get_key('15E7CE9BF1771A4ABC550B31F540A569CB935A42')
 
181
        self.assertEqual(key.revoked, False)
 
182
        self.assertEqual(key.expired, False)
 
183
        self.assertEqual(key.invalid, False)
 
184
        self.assertEqual(key.can_encrypt, False)
 
185
        self.assertEqual(key.can_sign, True)
 
186
        self.assertEqual(key.can_certify, True)
 
187
        self.assertEqual(key.secret, False)
 
188
        self.assertEqual(key.can_authenticate, False)
 
189
        self.assertEqual(key.protocol, gpgme.PROTOCOL_OpenPGP)
 
190
        self.assertEqual(len(key.subkeys), 1)
 
191
        self.assertEqual(len(key.uids), 2)
 
192
 
 
193
        self.assertEqual(key.subkeys[0].revoked, False)
 
194
        self.assertEqual(key.subkeys[0].expired, False)
 
195
        self.assertEqual(key.subkeys[0].disabled, False)
 
196
        self.assertEqual(key.subkeys[0].invalid, False)
 
197
        self.assertEqual(key.subkeys[0].can_encrypt, False)
 
198
        self.assertEqual(key.subkeys[0].can_sign, True)
 
199
        self.assertEqual(key.subkeys[0].can_certify, True)
 
200
        self.assertEqual(key.subkeys[0].secret, False)
 
201
        self.assertEqual(key.subkeys[0].can_authenticate, False)
 
202
        self.assertEqual(key.subkeys[0].pubkey_algo, gpgme.PK_RSA)
 
203
        self.assertEqual(key.subkeys[0].length, 4096)
 
204
        self.assertEqual(key.subkeys[0].keyid, 'F540A569CB935A42')
 
205
        self.assertEqual(key.subkeys[0].fpr,
 
206
                         '15E7CE9BF1771A4ABC550B31F540A569CB935A42')
 
207
        self.assertEqual(key.subkeys[0].timestamp, 1137568835)
 
208
        self.assertEqual(key.subkeys[0].expires, 0)
 
209
 
 
210
        self.assertEqual(key.uids[0].revoked, False)
 
211
        self.assertEqual(key.uids[0].invalid, False)
 
212
        self.assertEqual(key.uids[0].validity, 0)
 
213
        self.assertEqual(key.uids[0].uid, 'Sign Only <signonly@example.org>')
 
214
        self.assertEqual(key.uids[0].name, 'Sign Only')
 
215
        self.assertEqual(key.uids[0].email, 'signonly@example.org')
 
216
        self.assertEqual(key.uids[0].comment, '')
 
217
 
 
218
        self.assertEqual(key.uids[1].revoked, False)
 
219
        self.assertEqual(key.uids[1].invalid, False)
 
220
        self.assertEqual(key.uids[1].validity, 0)
 
221
        self.assertEqual(key.uids[1].uid,
 
222
                         'Sign Only (work address) <signonly@example.com>')
 
223
        self.assertEqual(key.uids[1].name, 'Sign Only')
 
224
        self.assertEqual(key.uids[1].email, 'signonly@example.com')
 
225
        self.assertEqual(key.uids[1].comment, 'work address')
 
226
 
 
227
def test_suite():
 
228
    loader = unittest.TestLoader()
 
229
    return loader.loadTestsFromName(__name__)