Esiste un modo ragionevole per bloccare/deridere i risultati di una chiamata a IDocumentSession.Query()
?Test dell'unità Domande RavenDb
Ho un comando in cui mi piacerebbe verificare che i metodi siano chiamati sugli oggetti (cioè "l'unità" in fase di test è il comando NOT degli oggetti che il comando orchestra). Non riesco a salvare oggetti Mock (tramite RhinoMocks) in un'istanza di db incorporata, quindi al momento sono costretto a verificare lo stato degli oggetti chiamati, piuttosto che verificare semplicemente che siano stati chiamati i metodi corretti.
Grazie, Matt
Grazie a Ayende, il problema è usare un EmbeddedDocumentStore significa che devo usare oggetti reali e non mock. IDocumentSession è davvero molto facile da deridere, IRavenQueryable non così tanto. – mattcole
@mattcole Cosa c'è di sbagliato nell'uso di 'EmbeddableDocumentStore {RunInMemory = true}' ?? Perché vuoi prendere in giro la 'IDocumentSession'? Sì .. l'esecuzione di 'EmbeddableDocumentStore' è leggermente più lenta di una beffa .. ma sono abbastanza sicuro che * uno * dei motivi principali per cui è stato creato' EmbeddableDocumentStore', era per il test delle unità. –
Al momento sto combattendo 2 cose nella mia testa: 1. Non dirmi di non prendere in giro - è un cattivo odore per me che non posso. 2. Quando usi EmbeddableDocumentStore, i test sono in esecuzione molto lentamente - quindi mi piacerebbe prendere in giro! – Ronnie