Question

Pour chaque entité que je crée j'écris un test d'unité seulement charge un enregistrement de la base de données pour voir si les travaux de la requête et les données peuvent être définies sur l'entité correctement. Vous pouvez voir cela comme un test unitaire pour la cartographie de base. Cela devrait également confirmer qu'un fichier de mappage existe pour le type et est défini comme ressource incorporée.

Les regards de test comme celui-ci (les tests réside dans la classe de base générique):

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

Je ne fais pas de déclarations, je veux juste voir si cela fonctionne en ligne sans jeter des exceptions.

dans un cas j'ai oublié de définir le fichier de mappage comme ressource incorporée, mais le test encore travaillé. Aucune requête a été envoyée à la base de données cependant, il n'a pas fondamentalement rien.

Pourquoi ne pas createCriteria () Liste () échouer pour un type unmapped? Et comment puis-je tester cette exigence spécifique?

EDIT: Si a constaté que la ligne suivante ne jette une exception, mais toujours interroger sur le premier cas

session.CreateCriteria(typeof(TEntity)).SetMaxResults(1).Future<TEntity>().ToArray()
Était-ce utile?

La solution

Je ne sais pas, mais apparemment à NHibernate ils ne savent pas non plus. Voir https://nhibernate.jira.com/browse/NH-2183 pour un bug qui a été signalé sur cette question. Ils travaillent toujours.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top