Один из способов сделать это:
[Test]
public void VerifyExceptionIsThrown()
{
Assert.Throws<NHibernate.HibernateException>(
() =>
{
using (var tx = _session.BeginTransaction())
{
_session.Update(new Entity());
tx.Commit();
}
});
}
Попытка обновить временную сущность приведет к исключению.
В качестве альтернативы, если вы используете NHibernateValidator, вы можете явно не выполнить установленную вами проверку, скажем, свойство Name вашей сущности должно иметь длину не более 10 символов.
Если вы заполняете свойство Name вашей сущности строкой длиной более 10 символов и пытаетесь сохранить ее, tx.Commit () выдаст вам исключение.