IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

ignorer un warning dans une methode


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut ignorer un warning dans une methode
    Bonjour à tous.

    Je suis en train de faire un unitTest sur une classe que j'ai implémenté.

    un des test doit appeller une methode qui naturellement genere un warning obsolete.

    Je voudrais que ma methode de test ignore ce warning.

    J'ai lu quelque part quelquechose comme
    #pragma(Ignore : C123)
    ...
    #pragma(Enable : C123)

    Une solution dans ce genre ne me conviendrait pas car la ligne qui genere le warning va lever un exception. Et justement, le role de ma methode de test est de s'assurer que l'exception est bien levée, je ne dois donc pas l'intercepter.

    idealement il me faudrait un attribut que je place au dessus de ma fonction...

    Auriez vous une solution?

    Je suis désolé, j'ai cherché dans google, mais les mots c# warning ignore ; me retournent trop de resultats qui parlent de tout sauf de ce qui m'interresse...

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Par défaut
    Hum ... si le test est de vérifier qu'une exception est levée, tu mets l'instruction dans un try ... catch puis dans le catch, tu changes la valeur d'un bool par exemple avant de faire une assertion pour vérifier que le bool est bien à true et que l'exception a donc bien été levée ?

    Sinon, dans les Properties du Projet, il y a dans la rubrique "Générer" et une zone "Supprimer les avertissements" qui permet justement de supprimer certains avertissements mais dont la portée est tout le projet.

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut
    non pas vraiment, j'utilise l'attribut ExpectedException
    Ca n'est pas bloquant en soit, je pourrai faire comme tu dis, je me dis juste que de savoir cela pourrait me servir plus tard...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    /// <summary>
            /// Un bool n'a que 2 etats, ThreeStateValue en a 3, compte tenu du role important de la valeur INDETERMINATE, on refuse le cast de ThreeStateValue vers un bool.
            /// En revanche on autorise le cast dans l'autre sens.
            /// </summary>
            [TestMethod()]
            [ExpectedException(typeof(NotSupportedException),"il n'est pas possible de convertir un ThreeStateValue en bool, pour la meme raison que l'on doit explicitement convertir un long en int")]
            public void CastThreeState2BoolFail()
            {
                bool maboul = true;
                ThreeStateValue ma3val = maboul; //autorisé
                Assert.IsTrue(ma3val == ThreeStateValue.TRUE);
     
                maboul = ma3val; //leve l'exception, mais crée aussi le warning que je veux ignorer
     
            }

  4. #4
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut
    AAahhh on peut les placer en dehors de la methode, super !

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ignorer la case dans une requete sql ?
    Par gregcat dans le forum Bases de données
    Réponses: 2
    Dernier message: 27/03/2006, 11h56
  2. ignorer les accents dans une recherche
    Par nono_cap dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/03/2006, 17h30
  3. execution de blt dans une methode de classe
    Par micflor dans le forum DirectX
    Réponses: 2
    Dernier message: 13/03/2006, 20h31
  4. Réponses: 9
    Dernier message: 19/10/2005, 04h35
  5. [MFC] Passage d'une structure dans une method
    Par KPitN dans le forum MFC
    Réponses: 5
    Dernier message: 18/06/2004, 10h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo