Files
exercism/python/crypto-square/crypto_square_test.py
2020-11-16 09:22:27 -06:00

37 lines
1.1 KiB
Python

import unittest
from crypto_square import cipher_text
# Tests adapted from `problem-specifications//canonical-data.json` @ v3.2.0
class CryptoSquareTest(unittest.TestCase):
def test_empty_string(self):
self.assertEqual(cipher_text(''), '')
def test_lowercase(self):
self.assertEqual(cipher_text('A'), 'a')
def test_remove_spaces(self):
self.assertEqual(cipher_text(' b '), 'b')
def test_remove_punctuation(self):
self.assertEqual(cipher_text('@1,%!'), '1')
def test_9chars_results_3chunks(self):
self.assertEqual(cipher_text('This is fun!'), 'tsf hiu isn')
def test_8chars_results_3chunks_ending_space(self):
self.assertEqual(cipher_text('Chill out.'), 'clu hlt io ')
def test_54chars_results_7chunks_2ending_space(self):
self.assertEqual(
cipher_text('If man was meant to stay on the ground, '
'god would have given us roots.'),
'imtgdvs fearwer mayoogo anouuio ntnnlvt wttddes aohghn sseoau '
)
if __name__ == '__main__':
unittest.main()