def test_cifra_de_cesar_apenas_letras_texto_grande_2(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['7'], 'Bom dia, Boa tarde, Boa noite!') == 'Ivt kph, Ivh ahykl, Ivh uvpal!' assert cifra_de_cesar.traduzir_modo_apenas_letras( ['7'], 'Ivt kph, Ivh ahykl, Ivh uvpal!') == 'Bom dia, Boa tarde, Boa noite!'
def apenas_letras( mensagem ): # Testa as 26 chaves possiveis da cifra de cesar em uma determinada mensagem. if not mensagem: return False lista_mensagens_possiveis = [] for chave in range(1, 27): mensagem_traduzida = cifra_de_cesar.traduzir_modo_apenas_letras( [str(chave)], mensagem) lista_mensagens_possiveis.append(mensagem_traduzida) return lista_mensagens_possiveis
def adivinhar_cesar_apenas_letras(mensagem, idioma_teste=''): if not mensagem: return False lista_mensagens = [] lista_pontuacoes = [] for chave in range(1, 27): nova_mensagem = cifra_de_cesar.traduzir_modo_apenas_letras( [str(chave)], mensagem) lista_mensagens.append(nova_mensagem) lista_pontuacoes.append( calcula_pontuacao(nova_mensagem.lower(), idioma_a_testar=idioma_teste)) index_melhor_possibilidade = lista_pontuacoes.index(min(lista_pontuacoes)) return [ lista_mensagens[index_melhor_possibilidade], index_melhor_possibilidade + 1 ]
def test_cifra_de_cesar_apenas_letras_chave_maior(): assert cifra_de_cesar.encriptar_modo_apenas_letras(['10'], 'az') == 'kj' assert cifra_de_cesar.traduzir_modo_apenas_letras(['10'], 'kj') == 'az'
def test_cifra_de_cesar_apenas_letras_texto_grande_1(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['1'], 'abcdefghijklmnopqrstuvwxyz') == 'bcdefghijklmnopqrstuvwxyza' assert cifra_de_cesar.traduzir_modo_apenas_letras( ['1'], 'bcdefghijklmnopqrstuvwxyza') == 'abcdefghijklmnopqrstuvwxyz'
def test_cifra_de_cesar_apenas_letras_maiusc_minusc(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['1'], 'aAbBcCdD') == 'bBcCdDeE' assert cifra_de_cesar.traduzir_modo_apenas_letras(['1'], 'bBcCdDeE') == 'aAbBcCdD'
def test_cifra_de_cesar_apenas_letras_caracteres_especiais(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['1'], 'áéíóú!? aeiou') == 'áéíóú!? bfjpv' assert cifra_de_cesar.traduzir_modo_apenas_letras( ['1'], 'áéíóú!? bfjpv') == 'áéíóú!? aeiou'
def test_cifra_de_cesar_apenas_letras_chave_1(): assert cifra_de_cesar.encriptar_modo_apenas_letras(['1'], 'abc') == 'bcd' assert cifra_de_cesar.traduzir_modo_apenas_letras(['1'], 'bcd') == 'abc'
def test_cifra_de_cesar_apenas_letras_volta_alfabeto(): assert cifra_de_cesar.encriptar_modo_apenas_letras(['1'], 'z') == 'a' assert cifra_de_cesar.traduzir_modo_apenas_letras(['1'], 'a') == 'z'
def test_cifra_de_cesar_apenas_letras_mensagem_invalida(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['1'], '') == dicionarios.retorna_erro_mensagem() assert cifra_de_cesar.traduzir_modo_apenas_letras( ['1'], '') == dicionarios.retorna_erro_mensagem()
def test_cifra_de_cesar_apenas_letras_chave_invalida_float(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['1.2'], 'a') == dicionarios.retorna_erro_chave() assert cifra_de_cesar.traduzir_modo_apenas_letras( ['2.4'], 'a') == dicionarios.retorna_erro_chave()
def test_cifra_de_cesar_apenas_letras_chave_invalida_negativa(): assert cifra_de_cesar.encriptar_modo_apenas_letras( ['-1'], 'a') == dicionarios.retorna_erro_chave() assert cifra_de_cesar.traduzir_modo_apenas_letras( ['-1'], 'a') == dicionarios.retorna_erro_chave()