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

Eclipse Platform Discussion :

[SWTBot] Tester l'existence d'un menu


Sujet :

Eclipse Platform

  1. #1
    Membre habitué Avatar de kkt8
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 472
    Points : 193
    Points
    193
    Par défaut [SWTBot] Tester l'existence d'un menu
    Bonjour,

    Je suis en train de me faire une suite de tests avec SWTBot.
    J'ai un test qui sélectionne un item dans l'arbre du Project Explorer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    projectExplorer.tree().select(i)
    et je voudrais tester, à partir de cet item sélectionné, l'existence d'un menu contextuel.

    si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(projectExplorer.tree().select(i).contextMenu("Build Project").widget != null)
    ça plante parce que pas de widget ...

    Quelqu'un à une idée ?

    D'avance Merci

  2. #2
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Bonjour,

    Je te conseille d'utiliser .click() au lieu de .select(), car souvent, tu as des événements supplémentaires dans un click par rapport au select().

    Ensuite, tu n'as pas a utiliser le .widget pour vérifier si c'est bon. La simple requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    projectExplorer.tree().select(i).contextMenu("Build Project")
    renverra une exception si il ne trouve pas le menu. Au lieu de vérifier le .widget, tu peux utiliser ton SWTBotMenu et lui demander .isVisible(), .isEnable()...

    HTH
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

  3. #3
    Membre habitué Avatar de kkt8
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 472
    Points : 193
    Points
    193
    Par défaut
    Bonjour Mickael,

    le select là s'applique au tree et donc tu ne peux pas faire un click dessus ???
    tu es bien obligé de sélectionner un élément de ton arbre avant d'appeler ton menu contextuel ?
    et un click sur un menu qui n'existe pas et c'est l'exception.

    Tiens en passant, sais-tu pourquoi certains sous menus d'un menu contextuel ou d'un menu sont inaccessibles ? J'ai pas fait le tour mais j'ai l'impression que ce sont mes sous menus qui ne sont pas visibles (problème de définition d'extension ?)

    Merci en tout cas !

  4. #4
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Citation Envoyé par kkt8 Voir le message
    le select là s'applique au tree et donc tu ne peux pas faire un click dessus ???
    Au temps pour moi, tu as raison. Je te conseillai plutot de faire un click() sur l'un des éléments de ton arbre.

    tu es bien obligé de sélectionner un élément de ton arbre avant d'appeler ton menu contextuel ?
    Je pense que c'est mieux en effet.

    et un click sur un menu qui n'existe pas et c'est l'exception.

    Tiens en passant, sais-tu pourquoi certains sous menus d'un menu contextuel ou d'un menu sont inaccessibles ? J'ai pas fait le tour mais j'ai l'impression que ce sont mes sous menus qui ne sont pas visibles (problème de définition d'extension ?)
    En fait, dans l'implémentation, meme les menus qui ne s'affichent pas présentement, mais qui s'affichent dans d'autres cas sont trouvés. C'est pour ca qu'il faut plutot utiliser isVisible().
    Le probleme vient peut etre du fait que tu n'as rien sélectionné dans ton arbre avant de faire le clic droit/contextMenu.
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

  5. #5
    Membre habitué Avatar de kkt8
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 472
    Points : 193
    Points
    193
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SWTBotMenu contextMenu = projectExplorer.tree().select(prj).contextMenu("MenuContext");
    if(contextMenu.menu("MenuInnaccessible").isVisible())
    ...
    Le contextMenu est ok.
    Le sous menu est quant a lui null (the widget was null) alors qu'il existe bien

Discussions similaires

  1. [JDBC]Tester l'existence d une table
    Par juflata dans le forum JDBC
    Réponses: 7
    Dernier message: 29/06/2004, 15h27
  2. tester l'existance d'un enregistrement
    Par LoLoSS dans le forum Langage SQL
    Réponses: 5
    Dernier message: 07/05/2004, 14h58
  3. tester l existence d un fichier sous turbo pascal
    Par Newllite dans le forum Turbo Pascal
    Réponses: 5
    Dernier message: 25/01/2004, 12h47
  4. Peut on tester l'existence d'un fichier ?
    Par Alamassepointcom dans le forum Flash
    Réponses: 2
    Dernier message: 10/10/2002, 12h10
  5. [ADO] Tester l'existence d'une table
    Par nd25 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 05/09/2002, 13h55

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