Для каждой создаваемой мной сущности я пишу модульный тест, который просто загружает одну запись из базы данных, чтобы проверить, работает ли запрос и можно ли правильно установить данные для сущности. Вы можете увидеть это как модульный тест для основного отображения. Это также должно подтвердить, что файл сопоставления существует для типа и задан как встроенный ресурс.
Тест выглядит следующим образом (тест находится в базовом классе):
session.CreateCriteria(typeof(TEntity)).SetMaxResults(1).List();
Я не делаю никаких утверждений, я просто хочу посмотреть, работает ли эта строка без исключений.
Теперь в одном случае я забыл установить файл сопоставления как встроенный ресурс, но тест все еще работал. Однако в базу данных не было отправлено ни одного запроса, поэтому он в основном ничего не делал.
Почему CreateCriteria () или List () не работают для несопоставленного типа? И как я могу проверить это конкретное требование?
РЕДАКТИРОВАТЬ: Если обнаружено, что следующая строка выдает исключение, но все еще задается вопросом о первом случае
session.CreateCriteria(typeof(TEntity)).SetMaxResults(1).Future<TEntity>().ToArray()