Sto provando a utilizzare OWIN all'API Web Self-Host mentre eseguo i miei test e voglio avviarlo in BeforeEach
e fermarsi nei metodi AfterEach
.Dispensare manualmente OWIN WebApp
Tutti gli esempi, che ho trovato suggerisce di utilizzare la parola chiave using
, ad es.
using (WebApp.Start<Startup>(url: baseAddress))
{
...
}
Ma nel mio caso non aiuta.
ho cercato di fare in questo modo:
private IDisposable _webApp;
public override void BeforeEach()
{
_webApp = WebApp.Start<OwinStartup>("http://localhost:99999/");
}
public override void AfterEach()
{
base.AfterEach();
if (_webApp != null)
_webApp.Dispose();
}
Ma per qualche ragione si chiama Dispose
metodo UnityResolver
classe in tanto sono stackoverflow...
eccezione.
Come devo disporre correttamente l'host OWIN?
Cosa intendi con "nel mio caso non è stato d'aiuto"? –
@DavidL Voglio dire, che non funzionerà se metto il blocco 'using' nel metodo' BeforeEach'. Immagino che prima di eseguire ogni test avvierà l'host e lo interromperà immediatamente. E voglio fermarlo nel metodo 'AfterEach'. – Andrew
Potresti pubblicare il codice della classe 'OwinStartup'? Il problema potrebbe essere lì, poiché la tua implementazione sembra OK. – drax