Rspec-core: Plusieurs types de spécifications dans les métadonnées

Créé le 24 oct. 2016  ·  3Commentaires  ·  Source: rspec/rspec-core

J'aimerais définir plusieurs types de spécifications pour les métadonnées, mais ce n'est pas possible actuellement.

J'aimerais définir des choses comme :

config.when_first_matching_example_defined(types: %i(feature request)) do
  # enable db support only for feature or request specs
  require 'support/db'
end

# include these Helpers only into feature or request specs
config.include(Helpers, types: %i(feature request))

Actuellement, je dois dupliquer les définitions.

config.when_first_matching_example_defined(types: :feature) do
  require 'support/db'
end

config.when_first_matching_example_defined(types: :request) do
  require 'support/db'
end

config.include(Helpers, type: :feature)
config.include(Helpers, type: :request)

Commentaire le plus utile

Je ne pense pas que la solution ci-dessus améliore la lisibilité et dans spec/rails_helper . Une solution en une seule ligne serait idéale pour ces cas. Je ne pense pas, je suis le seul qui apprécierait quelque chose que j'ai proposé.

Tous les 3 commentaires

Tu peux le faire:

%i(feature request).each do |type|
  config.when_first_matching_example_defined(type: type) do
    # enable db support only for feature or request specs
    require 'support/db'
  end

  # include these Helpers only into feature or request specs
  config.include(Helpers, type: type)
end

Étant donné à quel point il est facile de faire une simple boucle, je ne vois pas de raison pour que nous ajoutions la prise en charge de ce que vous demandez, d'autant plus que ce serait une manière très implicite et déroutante de faire correspondre les métadonnées, IMO .

Je ne pense pas que la solution ci-dessus améliore la lisibilité et dans spec/rails_helper . Une solution en une seule ligne serait idéale pour ces cas. Je ne pense pas, je suis le seul qui apprécierait quelque chose que j'ai proposé.

Étant donné qu'actuellement nous traitons les valeurs de métadonnées comme de simples valeurs, il serait vraiment déroutant de commencer à leur donner une signification particulière, pour ne pas dire ambiguë !

Cette page vous a été utile?
0 / 5 - 0 notes