J'ai une question qui peut sembler stupide et simple, mais j'ai à peine une idée de la façon de procéder.simple question comment afficher le message d'exception
Ma question est:
Comment puis-je modifier le message d'exception et personnaliser telle que j'ai toujours mon passage de tests unitaires?
En fait, je veux personnaliser le message d'exception à "étudiant" Johny "avait des fichiers connexes!" et comme modifié le message d'exception de l'API, le test de l'unité échoue.
Johny est une variable qui peut changer ...
Toute aide que je peux obtenir ce qui précède. Merci
Dans ma classe de test, je vais avoir
[ExpectedException(ExceptionType = typeof(Exception), ExpectedMessage = "The DELETE statement conflicted with the REFERENCE constraint \"FK_Issue_Priority\"")]
En fait, je suis en utilisant NHibernate et dans mon API je gestion des exceptions comme suit:
catch (NHibernate.ADOException exception)
{
if (exception.InnerException.GetType().Equals(typeof(System.Data.SqlClient.SqlException)))
{
if (exception.InnerException.Message.Contains("FK_Issue_Priority"))
{
throw new Exception("The DELETE statement conflicted with the REFERENCE constraint \"FK_Issue_Priority\"");
}
else
{
throw new Exception("A database error occurred while trying to add the customer to project relation please the see inner exception for details", exception.InnerException);
}
}
else
{
throw exception;
}
}
Merci de répondre. Puis-je avoir un exemple comment faire cela? – learning
Dans Visual Studio, créez un nouveau fichier de classe et supprimez la définition de classe. Utilisez ensuite l'extrait "Exception" pour créer une nouvelle classe d'exception (tapez "Exception", puis cliquez sur TAB pour déclencher l'extrait), puis renommez la classe en "RelatedFilesExistException". Dans votre code, lancez une nouvelle occurrence de RelatedFilesExistException au lieu de lancer une nouvelle exception. Dans votre test unitaire, utilisez [ExpectedException (ExceptionType = typeof (RelatedFilesExistException)] –