Question

J'ai un scénario rspec qui ressemble à:

    scenario "some description of the scenario", :js => true, :slow => true, :wip => true do
      sleep 60
      ...

Mais je voudrais appeler sleep conditionnel à ce que le scénario est marqué avec quelque chose comme:

    scenario "some description of the scenario", :js => true, :slow => true, :wip => true do
      sleep 60 if tags[:slow] && !tags[:wip]
      ...

Je serais reconnaissant toute aide.

Était-ce utile?

La solution

Depuis rspec ne dispose pas d'une méthode scenario, je devine que vous utilisez capybara ou le steak et qu'il est vraiment juste un alias pour it. Dans ce cas, rspec fait référence interne à ce bloc de code comme un « exemple », et vous pouvez accéder aux méta-données comme ceci:

sleep 60 if example.metadata[:slow]  # sleep if example is tagged with :slow => true

Vous pouvez aussi mettre les métadonnées sur le groupe par exemple, le bloc describe qui entoure les différents exemples. Voir ceci: http: // relishapp. com / rspec / rspec-core / v / 2-6 / dir / métadonnées / métadonnées définies utilisateur

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top