Ho uno unit test (nUnit). Molti livelli più in basso nello stack di chiamate un metodo fallirà se viene eseguito tramite uno unit test.
Idealmente useresti qualcosa come la presa in giro per impostare l'oggetto da cui dipende questo metodo, ma questo è un codice di terze parti e non posso farlo senza molto lavoro.
Non voglio impostare metodi specifici per nUnit: ci sono troppi livelli qui ed è un modo scadente di eseguire il test unitario.
Invece quello che vorrei fare è aggiungere qualcosa di simile in fondo allo stack di chiamate
#IF DEBUG // Unit tests only included in debug build
if (IsRunningInUnitTest)
{
// Do some setup to avoid error
}
#endif
Quindi qualche idea su come scrivere IsRunningInUnitTest?
PS Sono pienamente consapevole che questo non è un ottimo design, ma penso che sia migliore delle alternative.