Skip to content

Commit 8c650ac

Browse files
committed
#13 - Python
1 parent 5c6d886 commit 8c650ac

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
"""
2+
* EJERCICIO:
3+
* Crea una función que se encargue de sumar dos números y retornar
4+
* su resultado.
5+
* Crea un test, utilizando las herramientas de tu lenguaje, que sea
6+
* capaz de determinar si esa función se ejecuta correctamente.
7+
*
8+
* DIFICULTAD EXTRA (opcional):
9+
* Crea un diccionario con las siguientes claves y valores:
10+
* "name": "Tu nombre"
11+
* "age": "Tu edad"
12+
* "birth_date": "Tu fecha de nacimiento"
13+
* "programming_languages": ["Listado de lenguajes de programación"]
14+
* Crea dos test:
15+
* - Un primero que determine que existen todos los campos.
16+
* - Un segundo que determine que los datos introducidos son correctos.
17+
18+
"""
19+
20+
import unittest
21+
22+
def suma(a, b):
23+
return a + b
24+
25+
class TestPrueba(unittest.TestCase):
26+
27+
def test_suma(self):
28+
self.assertEqual(suma(1,2), 3)
29+
self.assertEqual(suma(-1,1), 0)
30+
self.assertEqual(suma(-1,-1), -2)
31+
self.assertNotEqual(suma(4,3), 5) # Verifica que suma no sea igual a 5
32+
self.assertTrue(suma(0,0) == 0) # Verifica que suma sea True (0 igual a 0)
33+
self.assertIsInstance(suma(6,9), int) # Verifica que el resultado sea un int
34+
#self.assertIsNone(suma(0,0)) # Comentamos el ultimo porque Verifica que suma(0, 0) sea None (esto fallará)
35+
36+
if __name__ == '__main__':
37+
unittest.main()
38+
39+
40+
######### -------------------------- EXTRA ------------------------------------- #################
41+
42+
43+
my_dict = {
44+
"name": "Chris",
45+
"age": 23,
46+
"birth_date": "01/08/1994",
47+
"programming_languages": ["Python", "JavaScript", "HTML"]
48+
}
49+
50+
class DictionaryTest(unittest.TestCase):
51+
52+
def test_first (self):
53+
expected_keys = ["name", "age", "birth_date", "programming_languages"]
54+
for key in expected_keys:
55+
self.assertIn(key, my_dict, f'{key} esta clave esta faltando en my_dict')
56+
57+
def test_second (self):
58+
self.assertIsInstance(my_dict["name"], str)
59+
self.assertIsInstance(my_dict["age"], int)
60+
self.assertIsInstance(my_dict["birth_date"], str)
61+
self.assertIsInstance(my_dict["programming_languages"], list)
62+
for language in my_dict["programming_languages"]:
63+
self.assertIsInstance(language, str)
64+
65+
66+
if __name__ == '__main__':
67+
unittest.main()

0 commit comments

Comments
 (0)