Exemple #1
0
 def test_encode_with_three_rails(self):
     self.assertMultiLineEqual(encode("WEAREDISCOVEREDFLEEATONCE", 3),
                               "WECRLTEERDSOEEFEAOCAIVDEN")
     self.assertMultiLineEqual(
         encode("we are discovered, flee at once!", 3),
         "WECRLTEERDSOEEFEAOCAIVDEN")
     self.assertMultiLineEqual(encode("FOOBARS", 3), "FAOBROS")
Exemple #2
0
 def test_encode_with_two_rails(self):
     self.assertMultiLineEqual(
         encode('XOXOXOXOXOXOXOXOXO', 2), 'XXXXXXXXXOOOOOOOOO')
     self.assertMultiLineEqual(
         encode('BEARS', 2), 'BASER')
     self.assertMultiLineEqual(
         encode('BEARSANDBIRDS', 2,), 'BASNBRSERADID'
     )
Exemple #3
0
 def test_encode_decode_identity(self):
     for msg, rails in [
         ("XOXOXOXOXOXOXOXOXO", 2), ("WEAREDISCOVEREDFLEEATONCE", 3),
         ("THEDEVILISINTHEDETAILS", 3), ("THEDEVILISINTHEDETAILS", 5),
         ("133714114238148966225439541018335470986172518171757571896261", 6)
     ]:
         self.assertMultiLineEqual(decode(encode(msg, rails), rails), msg)
 def test_encode_with_three_rails(self):
     self.assertMultiLineEqual(encode("WEAREDISCOVEREDFLEEATONCE", 3),
                               "WECRLTEERDSOEEFEAOCAIVDEN")
 def test_encode_with_two_rails(self):
     self.assertMultiLineEqual(
         encode('XOXOXOXOXOXOXOXOXO', 2), 'XXXXXXXXXOOOOOOOOO')
 def test_encode_with_middle_stop(self):
     self.assertMultiLineEqual(encode('EXERCISES', 4), 'ESXIEECSR')
Exemple #7
0
 def test_encode_with_empty_string(self):
     self.assertEqual(encode('', 2), '')
Exemple #8
0
 def test_encode_with_three_rails(self):
     self.assertMultiLineEqual(
         encode('WEAREDISCOVEREDFLEEATONCE', 3),
         'WECRLTEERDSOEEFEAOCAIVDEN')
     self.assertMultiLineEqual(
         encode('ALLBYMYSELF', 3), 'AYELBMSLLYF')
 def test_encode_with_middle_stop(self):
     self.assertMultiLineEqual('ESXIEECSR', encode('EXERCISES', 4))
 def test_encode_with_ending_in_the_middle(self):
     self.assertMultiLineEqual(encode('EXERCISES', 4), 'ESXIEECSR')
Exemple #11
0
 def test_encode_with_two_rails(self):
     self.assertMultiLineEqual(encode("XOXOXOXOXOXOXOXOXO", 2),
                               "XXXXXXXXXOOOOOOOOO")
     self.assertMultiLineEqual(encode("FOOBARS", 2), "FOASOBR")
     self.assertMultiLineEqual(encode("FOO BAR S!", 2), "FOASOBR")
Exemple #12
0
 def test_encode_with_one_rail(self):
     self.assertEqual(encode('One rail, only one rail', 1),
                      'One rail, only one rail')
Exemple #13
0
 def test_encode_with_less_letters_than_rails(self):
     self.assertEqual(encode('More rails than letters', 24),
                      'More rails than letters')
Exemple #14
0
 def test_encode_with_ending_in_the_middle(self):
     self.assertMultiLineEqual(encode('EXERCISES', 4), 'ESXIEECSR')
Exemple #15
0
 def test_encode_with_ending_in_the_middle(self):
     self.assertMultiLineEqual(encode('EXERCISES', 4), 'ESXIEECSR')
     self.assertMultiLineEqual(encode('TOBEORNOTTOBE', 4), 'TNEOROBBOTOET')
 def test_encode_with_ending_in_the_middle(self):
     self.assertMultiLineEqual(encode("EXERCISES", 4), "ESXIEECSR")
 def test_encode_with_two_rails(self):
     self.assertMultiLineEqual(encode("XOXOXOXOXOXOXOXOXO", 2),
                               "XXXXXXXXXOOOOOOOOO")
Exemple #18
0
 def test_encode_with_five_rails(self):
     self.assertMultiLineEqual(encode("FOOBARS", 5), "FOOSBRA")
     self.assertMultiLineEqual(encode("The Devil Is In The Details.", 5),
                               "TIEHLSDTEIIEADVNHISETL")
 def test_encode_with_three_rails(self):
     self.assertMultiLineEqual('WECRLTEERDSOEEFEAOCAIVDEN',
                               encode('WEAREDISCOVEREDFLEEATONCE', 3))
Exemple #20
0
 def test_encode_with_six_rails(self):
     self.assertMultiLineEqual(encode("FOOBARS", 6), "FOOBASR")
 def test_encode_with_two_rails(self):
     self.assertMultiLineEqual('XXXXXXXXXOOOOOOOOO',
                               encode('XOXOXOXOXOXOXOXOXO', 2))
 def test_encode_and_decode(self):
     value = "here is a message from the test case, GREAT!"
     self.assertEqual(value, decode(encode(value, 5), 5))