-
Notifications
You must be signed in to change notification settings - Fork 7
/
tests.py
74 lines (50 loc) · 1.8 KB
/
tests.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
from mastermind import reportar, crear_numero
def test_reportar_1():
real = reportar('1234', plenos=1, regulares=2)
<<<<<<< Updated upstream
esperado = u"El número 1234 tiene 1 pleno y 2 regulares. Dale que va"
=======
esperado = "El número 1234 tiene 1 pleno y 2 regulares: dale que va"
>>>>>>> Stashed changes
assert real == esperado
def test_reportar_2():
real = reportar('1349', plenos=2, regulares=2)
esperado = "El número 1349 tiene 2 plenos y 2 regulares: ya lo tenés!"
assert real == esperado
def test_reportar_3():
real = reportar('1092', plenos=0, regulares=1)
esperado = "El número 1092 tiene 0 pleno y 1 regular: estás más lejos que Macri de la pobreza cero"
assert real == esperado
def test_crear_numero():
for x in range(1000):
numero = crear_numero()
assert numero.isdigit()
assert len(set(numero)) == 4
assert set(numero).issubset(set(map(str, range(10))))
def test_validar_1():
assert validar('1234')
def test_validar_no_acepta_repetidos():
assert not validar('1134')
assert not validar('1334')
assert not validar('1133')
assert not validar('1111')
assert not validar('0122')
def test_validar_no_acepta_letras():
assert not validar('a123')
assert not validar('123v')
def test_validar_no_acepta_letras():
assert not validar('a123')
assert not validar('123v')
def test_validar_largo_4():
assert not validar('123')
assert not validar('2')
def test_evaluar():
assert evaluar('1234', '1234') == (4, 0)
assert evaluar('1234', '2134') == (2, 2)
assert evaluar('1234', '1243') == (2, 2)
assert evaluar('1234', '9871') == (0, 1)
assert evaluar('1234', '9831') == (1, 1)
if __name__ == '__main__':
test_reportar_3()
test_reportar_2()
test_reportar_1()