Ejemplo n.º 1
0
 def test_punctuation(self):
     ''' Caesar (test_punctuation): punctuation should remain unmodified '''
     e = Caesar(key=14)
     original = '!@$%%^&*()_-+={}[]|":;<>,./?'
     enciphered = e.encipher(original, keep_punct=True)
     self.assertEqual(original.upper(), enciphered.upper())
     e = Caesar(key=14)
     original = '!@$%%^&*()_-+={}[]|":;<>,./?'
     enciphered = e.encipher(original, keep_punct=False)
     self.assertEqual('', enciphered.upper())
Ejemplo n.º 2
0
 def test_decipher(self):
     ''' Caesar (test_decipher): test known ciphertext->plaintext pairs '''
     text = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
     declist = ['xyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvw',
                'vwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstu',
                'stuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqr',
                'pqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmno',
                'lmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk',
                'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz',
                'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyza']
     for i,key in enumerate((3,5,8,11,15,0,25)):
         dec = Caesar(key).decipher(text)
         self.assertEqual(dec.upper(), declist[i].upper())
Ejemplo n.º 3
0
 def test_encipher(self):
     ''' Caesar (test_encipher): test known plaintext->ciphertext pairs '''
     text = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
     enclist = ['bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyza',
                'cdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzab',
                'efghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd',
                'hijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefg',
                'jklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghi',
                'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz',
                'zabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxy']
     for i,key in enumerate((1,2,4,7,9,0,25)):
         enc = Caesar(key).encipher(text)
         self.assertEqual(enc.upper(), enclist[i].upper())