示例#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())
示例#2
0
文件: pollux.py 项目: pdogg/mdbc
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)
示例#3
0
 def test_t(self):
     self.assertEqual(decode("-"), "T")
示例#4
0
 def test_p(self):
     self.assertEqual(decode(".--."), "P")
示例#5
0
 def test_r(self):
     self.assertEqual(decode(".-."), "R")
示例#6
0
 def test_k(self):
     self.assertEqual(decode("-.-"), "K")
示例#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.')
示例#8
0
 def test_g(self):
     self.assertEqual(decode("--."), "G")
示例#9
0
 def test_i(self):
     self.assertEqual(decode(".."), "I")
示例#10
0
 def test_y(self):
     self.assertEqual(decode("-.--"), "Y")
示例#11
0
 def test_z(self):
     self.assertEqual(decode("--.."), "Z")
示例#12
0
 def test_x(self):
     self.assertEqual(decode("-..-"), "X")
示例#13
0
 def test_a(self):
     self.assertEqual(decode(".-"), "A")
示例#14
0
 def test_w(self):
     self.assertEqual(decode(".--"), "W")
示例#15
0
 def test_v(self):
     self.assertEqual(decode("...-"), "V")
示例#16
0
 def test_u(self):
     self.assertEqual(decode("..-"), "U")
 def test_sos_decode(self):
     assert decode(self.morse_sos) == 'SOS'
示例#18
0
 def test_sos(self):
     self.assertEqual(decode("... --- ..."), "SOS")
示例#19
0
 def test_f(self):
     self.assertEqual(decode("..-."), "F")
示例#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())
示例#21
0
 def test_h(self):
     self.assertEqual(decode("...."), "H")
示例#22
0
 def test_l(self):
     self.assertEqual(decode(".-.."), "L")
示例#23
0
 def test_j(self):
     self.assertEqual(decode(".---"), "J")
示例#24
0
 def test_n(self):
     self.assertEqual(decode("-."), "N")
示例#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/
示例#27
0
 def test_m(self):
     self.assertEqual(decode("--"), "M")
示例#28
0
def test_decode(s, exp):
    assert morse.decode(s) == exp
示例#29
0
 def test_o(self):
     self.assertEqual(decode("---"), "O")
示例#30
0
 def test_b(self):
     self.assertEqual(decode("-..."), "B")
示例#31
0
 def test_q(self):
     self.assertEqual(decode("--.-"), "Q")
示例#32
0
 def test_c(self):
     self.assertEqual(decode("-.-."), "C")
示例#33
0
 def test_s(self):
     self.assertEqual(decode("..."), "S")
示例#34
0
 def test_d(self):
     self.assertEqual(decode("-.."), "D")
示例#35
0
 def test_e(self):
     self.assertEqual(decode("."), "E")
 def test_words_decode(self):
     assert decode(self.morse_12_23) == '12 34'