Skip to content

Instantly share code, notes, and snippets.

@alisonamerico
Created February 8, 2020 02:58
Show Gist options
  • Save alisonamerico/8ca9648a2e808bb9e805cf34eb0e2e7e to your computer and use it in GitHub Desktop.
Save alisonamerico/8ca9648a2e808bb9e805cf34eb0e2e7e to your computer and use it in GitHub Desktop.
"""
Problema.
Uma entrada de valores numéricos (uma lista deles)
3x -> Queijo
5x -> Goiabada
3x e 5x -> romeu e Julieta
Base dos testes:
assert RESULTADO OPERAÇÃO ESPERADO
"""
# romeu_julieta.py
from operator import mod, eq
def romeu_julieta(valor: int) -> str:
if eq(mod(valor, 3), 0) and eq(mod(valor, 5), 0):
return 'romeu e julieta'
elif eq(mod(valor, 3), 0):
return 'queijo'
elif eq(mod(valor, 5), 0):
return 'goiabada'
else:
return valor
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# test_romeu_julieta.py
from unittest import TestCase, main
from romeu_julieta import romeu_julieta
class TestRomeuEJulieta(TestCase):
def teste_rej_deve_retornar_queijo_quando_for_multiplo_de_3(self):
"""romeu_julieta(3) -> 'Queijo' """
valor_entrada = 3
valor_experado = 'queijo'
self.assertEqual(romeu_julieta(valor_entrada), valor_experado)
def teste_rej_deve_retornar_goiabada_quando_for_multiplo_de_5(self):
"""romeu_julieta(5) -> 'Goiabada' """
valor_entrada = 5
valor_experado = 'goiabada'
self.assertEqual(romeu_julieta(valor_entrada), valor_experado)
def teste_rej_deve_retornar_romeu_e_julieta_quando_for_15(self):
"""romeu_julieta(15) -> 'Romeu e Julieta' """
valor_entrada = 15
valor_experado = 'romeu e julieta'
self.assertEqual(romeu_julieta(valor_entrada), valor_experado)
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment