Beispiel #1
0
 def test_strencode_decode_exaustive(self):
     '''Evil test'''
     all_chr = [chr(i) for i in range(256)]
     many_chr = all_chr * 4 + list('        ') * 32
     random.shuffle(many_chr)
     phrase = "".join(many_chr)
     expected_decode = morse.removeunusablecharacters(phrase).lower()
     encoded = morse.encode(phrase)
     decoded = morse.decode(encoded)
     self.assertEqual(expected_decode, decoded.lower())
Beispiel #2
0
def decode(ciphertext, key):
  morsestring = ""
  for i in range(len(ciphertext)):
      if ciphertext[i] in key['dots']:
        morsestring += "."
      if ciphertext[i] in key['dashes']:
        morsestring += "-"
      if ciphertext[i] in key['breaks']:
        morsestring += " "
  return morse.decode(morsestring)
Beispiel #3
0
 def test_t(self):
     self.assertEqual(decode("-"), "T")
Beispiel #4
0
 def test_p(self):
     self.assertEqual(decode(".--."), "P")
Beispiel #5
0
 def test_r(self):
     self.assertEqual(decode(".-."), "R")
Beispiel #6
0
 def test_k(self):
     self.assertEqual(decode("-.-"), "K")
Beispiel #7
0
from morse import code, decode

mode = input('Choose-> Code: 0, Decode: 1\n')

if mode == '0':
    text = input('Podaj text: ')
    print(code(text))
elif mode == '1':
    print('Oddziel znaki spacja, a słowa tabem.\n')
    text = input('Podaj text: ')
    print(decode(text))
else:
    print('Try again.')
Beispiel #8
0
 def test_g(self):
     self.assertEqual(decode("--."), "G")
Beispiel #9
0
 def test_i(self):
     self.assertEqual(decode(".."), "I")
Beispiel #10
0
 def test_y(self):
     self.assertEqual(decode("-.--"), "Y")
Beispiel #11
0
 def test_z(self):
     self.assertEqual(decode("--.."), "Z")
Beispiel #12
0
 def test_x(self):
     self.assertEqual(decode("-..-"), "X")
Beispiel #13
0
 def test_a(self):
     self.assertEqual(decode(".-"), "A")
Beispiel #14
0
 def test_w(self):
     self.assertEqual(decode(".--"), "W")
Beispiel #15
0
 def test_v(self):
     self.assertEqual(decode("...-"), "V")
Beispiel #16
0
 def test_u(self):
     self.assertEqual(decode("..-"), "U")
 def test_sos_decode(self):
     assert decode(self.morse_sos) == 'SOS'
Beispiel #18
0
 def test_sos(self):
     self.assertEqual(decode("... --- ..."), "SOS")
Beispiel #19
0
 def test_f(self):
     self.assertEqual(decode("..-."), "F")
Beispiel #20
0
 def test_encode(self):
     '''Test encoding and decoding of normal charaters'''
     phrase = "The quick red fox jumped over the lazy dog 1234567890"
     encoded = morse.encode(phrase)
     decoded = morse.decode(encoded)
     self.assertEqual(phrase.lower(), decoded.lower())
Beispiel #21
0
 def test_h(self):
     self.assertEqual(decode("...."), "H")
Beispiel #22
0
 def test_l(self):
     self.assertEqual(decode(".-.."), "L")
Beispiel #23
0
 def test_j(self):
     self.assertEqual(decode(".---"), "J")
Beispiel #24
0
 def test_n(self):
     self.assertEqual(decode("-."), "N")
Beispiel #25
0
 def test_empty_message(self):
     self.assertEqual(decode(""), "")
from morse import decode


# See challenge_1.png
# (r)ed, (g)reen notes
cyphertext = """

rgg g gr grg ggg gr rg r gr r gg\
gg g ggg g rgrg gr\
g g r rgrg rrr r\
gg g gg ggg g gggg\
r rggr gggr gr rgg rrr r \
ggr rgrg rggr grg ggggr g\
grg grg rrr rr rr grg rr rrr \
grg ggg g\

""".replace('r', '-').replace('g', '.')

print decode(cyphertext.strip())
# DEARSANTATHESECRETCODEISE4XVADOTUCXR4FROMMRMORSE
# DEAR SANTA, THE SECRET CODE IS: E4XVA.UCXR4 FROM MR MORSE
# https://cybersecuritychallenge.org.uk/E4XVA.UCXR4/
Beispiel #27
0
 def test_m(self):
     self.assertEqual(decode("--"), "M")
Beispiel #28
0
def test_decode(s, exp):
    assert morse.decode(s) == exp
Beispiel #29
0
 def test_o(self):
     self.assertEqual(decode("---"), "O")
Beispiel #30
0
 def test_b(self):
     self.assertEqual(decode("-..."), "B")
Beispiel #31
0
 def test_q(self):
     self.assertEqual(decode("--.-"), "Q")
Beispiel #32
0
 def test_c(self):
     self.assertEqual(decode("-.-."), "C")
Beispiel #33
0
 def test_s(self):
     self.assertEqual(decode("..."), "S")
Beispiel #34
0
 def test_d(self):
     self.assertEqual(decode("-.."), "D")
Beispiel #35
0
 def test_e(self):
     self.assertEqual(decode("."), "E")
 def test_words_decode(self):
     assert decode(self.morse_12_23) == '12 34'