Domanda

Per ogni entità che creo scrivo una prova di unità che solo i carichi un record dal database per vedere se le opere di query ei dati possono essere impostati correttamente l'entità. Si potrebbe vedere questo come un test di unità per la mappatura di base. Questo dovrebbe anche confermare che esiste un file di mapping per il tipo e viene impostato come risorsa incorporata.

Gli sguardi test come questo (risiede test in classe base generica):

session.CreateCriteria(typeof(TEntity)).SetMaxResults(1).List();

Non faccio nessun affermazioni, voglio solo vedere se questa linea materiale senza generare eccezioni.

Ora, in un caso, ho dimenticato di impostare il file di mapping come risorsa incorporata ma il test ancora lavorato. No query è stata inviata al database tuttavia, quindi in fondo non ha fatto nulla.

Perché non createCriteria () o Lista () non riuscire per un tipo non mappata? E come posso verificare che requisito specifico?

Modifica Se ha trovato che la seguente linea non un'eccezione, ma ancora chiedendo circa il primo caso

session.CreateCriteria(typeof(TEntity)).SetMaxResults(1).Future<TEntity>().ToArray()
È stato utile?

Soluzione

Non lo so, ma a quanto pare a NHibernate non sanno neanche. Vedere https://nhibernate.jira.com/browse/NH-2183 per un bug che è stato segnalato su questo tema. Stanno ancora lavorando su di esso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top