Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/12/2015, 16:22
trulari
 
Fecha de Ingreso: octubre-2012
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Date y ArrayList en Junit

No, me he explicado mal respecto al segundo punto (el primero pensé que sería poco elegante hacerlo así, pero no tengo criterio en absoluto soy muy nuevo en esto).

En el segundo caso, tengo una clase Restaurante (es mejor verlo como una reserva), que tiene atributos, uno de ellos es menu, que es un arraylist que a través del setMenu le voy pasando strings llamados "plato". Plato no es una clase, es cada uno de los strings que tiene el ArrayList. El ArrayList menu puede contener entre 0, y N veces plato. Según a través del setMenu cuantas veces lo hayamos ido cargando.

Pero llegado a practicar con Junit, intento hacer algo como

Código PHP:
assertEquals("[Pizza]"miRestaurante.getMenu()); 
Si hubiese cargado varias veces plato, haria p.ej

Código PHP:
assertEquals("[Pizza, Macarrones, Chuleta]"miRestaurante.getMenu()); 
por que es lo que esperaría recibir :)

En mi caso de ¿control?, he instanciado mi objeto Restaurante y le he pasado como variable plato por el SetMenu Pizza, y he hecho un add al ArrayList, por lo que getMenu me devuelve [Pizza], que lo quiero comparar con "[Pizza]", pero me dice que

java.lang.AssertionError: expected: java.lang.String<[Pizza]> but was: java.util.ArrayList<[Pizza]>


Claro, es un problema de tipos, estoy comparando String "[Pizza]" con un elemento pizza (las [] las pone solas) del ArrayList. :( No se si habrá otra resolución mejor, pero lo he solucionado con el mismo sistema del toString :) Muchas gracias.

Última edición por trulari; 14/12/2015 a las 17:07