Come posso simulare un enum a scopo di test usando Mockito? Dato questo esempio per l'enumerazione:Mock un enum usando Mockito in Java
public enum TestEnum {
YES,
NO
}
e questo per il metodo con l'enum:
public static boolean WorkTheEnum(TestEnum theEnum) {
switch (theEnum) {
case YES:
return true;
case NO:
return false;
default:
// throws an exception here
}
}
come posso prendere in giro l'enum per raggiungere il ramo di default del ciclo switch? This answer dice che Mockito non può prendere in giro enum ma la risposta è stata fornita anche più di un anno fa. Nel frattempo posso prendere in giro un enum o devo lasciare che il ramo rimanga non testato? Non è possibile utilizzare altri framework Mocking.
ci sono modi hacky per farlo: [dell'hacking enumerazioni e la modifica di "static final" Campi] (http://www.javaspecialists.eu/archive/Issue161.html) – Jesper
Enum sono come classe statica, pertanto si puo' li moke con mokito. Nel tuo esempio, il valore predefinito non è raggiungibile, quindi non puoi testarlo. –
Perché testare un percorso non raggiungibile? – Manu