Skip to content

Commit a941cba

Browse files
committed
#13 java
1 parent 024dead commit a941cba

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
import java.util.Arrays;
2+
import java.util.HashMap;
3+
import java.util.Map;
4+
import org.junit.jupiter.api.Test;
5+
import static org.junit.jupiter.api.Assertions.*;
6+
7+
/**
8+
* Clase principal que contiene la función de suma y el diccionario de datos personales.
9+
*/
10+
public class eulogioep {
11+
12+
/**
13+
* Función que suma dos números y retorna el resultado.
14+
* @param a Primer número a sumar.
15+
* @param b Segundo número a sumar.
16+
* @return La suma de a y b.
17+
*/
18+
public static int suma(int a, int b) {
19+
return a + b;
20+
}
21+
22+
/**
23+
* Crea y retorna un diccionario (Map en Java) con datos personales.
24+
* @return Map con datos personales.
25+
*/
26+
public static Map<String, Object> crearDiccionario() {
27+
Map<String, Object> diccionario = new HashMap<>();
28+
diccionario.put("name", "Tu nombre");
29+
diccionario.put("age", 30);
30+
diccionario.put("birth_date", "1993-01-01");
31+
diccionario.put("programming_languages", Arrays.asList("Java", "Python", "JavaScript"));
32+
return diccionario;
33+
}
34+
35+
/**
36+
* Clase interna para las pruebas unitarias.
37+
*/
38+
public static class Tests {
39+
40+
@Test
41+
public void testSuma() {
42+
assertEquals(5, suma(2, 3), "La suma de 2 y 3 debería ser 5");
43+
assertEquals(0, suma(-1, 1), "La suma de -1 y 1 debería ser 0");
44+
assertEquals(-5, suma(-2, -3), "La suma de -2 y -3 debería ser -5");
45+
}
46+
47+
@Test
48+
public void testExistenciaCamposDiccionario() {
49+
Map<String, Object> diccionario = crearDiccionario();
50+
assertTrue(diccionario.containsKey("name"), "El diccionario debe contener la clave 'name'");
51+
assertTrue(diccionario.containsKey("age"), "El diccionario debe contener la clave 'age'");
52+
assertTrue(diccionario.containsKey("birth_date"), "El diccionario debe contener la clave 'birth_date'");
53+
assertTrue(diccionario.containsKey("programming_languages"), "El diccionario debe contener la clave 'programming_languages'");
54+
}
55+
56+
@Test
57+
public void testDatosCorrectosDiccionario() {
58+
Map<String, Object> diccionario = crearDiccionario();
59+
assertEquals("Tu nombre", diccionario.get("name"), "El nombre debe ser 'Tu nombre'");
60+
assertTrue(diccionario.get("age") instanceof Integer, "La edad debe ser un entero");
61+
assertTrue(((String) diccionario.get("birth_date")).matches("\\d{4}-\\d{2}-\\d{2}"), "La fecha de nacimiento debe tener el formato YYYY-MM-DD");
62+
assertTrue(diccionario.get("programming_languages") instanceof java.util.List, "Los lenguajes de programación deben ser una lista");
63+
assertTrue(((java.util.List<?>) diccionario.get("programming_languages")).size() > 0, "La lista de lenguajes de programación no debe estar vacía");
64+
}
65+
}
66+
}

0 commit comments

Comments
 (0)