Question

Une partie du développement de mon projet a été done.Our société me demande d'écrire des cas de test de concombre pour le code développé et pour le développement désormais ainsi. Le fichier itinéraires ont deux sous-domaines pour admin et hosts.Devise est également utilisé.

Maintenant, j'installé le concombre et ont écrit le premier scénario pour la première histoire lorsque les terres de l'utilisateur non registerd sur la page d'accueil, pénètre un e-mail valide et est redirigé vers la page suivante page..the n'a pas champ de mot de passe.

Scenario: Non registered user lands on beta home page. 
Given: I am on the homepage 
When: I enter valid email with "bahubalian...@gmail.com". 
Then: I should be redirected to request invitation page. 

Le problème est dans mon dossier de routes, j'ai,

constraints :subdomain => ADMIN_SUBDOMAIN do 
  .... 
  root :to => admin#index 
end 
constraints :subdomain => HOST do 
  ... 
  root :to => home#index. 
end 

Maintenant, comment puis-je spécifier le fichier path.rb pour rechercher les root_path dans ce sous-domaine spécifique. Theres pas root_path écrite en dehors des contraintes de sous-domaines. Ceci est ma première fois avec l'essai. Je suis vraiment coincé sur this.Any aide est très apprécié.

Je viens de me savoir de quelqu'un que cela peut être mis en œuvre à l'aide capybara.If donc, pourriez-vous s'il vous plaît donner une petite idée à ce sujet.

Était-ce utile?

La solution

Chassé il était assez simple.Capybara fournit une méthode default_host. Donc, je voulais juste mentionner,

When I visit subomain sub

Et puis le webstep


Given /^I visit subdomain (.*)$/ do |site_domain|

  site_domain = "http://sub.example.com" if site_domain == "admin"

  Capybara.default_host = site_domain
  visit "/"
end

Mise à jour:

default_host n'est pas censé être utilisé comme il est pas mentionné dans la documentation. essayez plutôt d'utiliser le chemin absolu en visite.

Given /^I visit subdomain (.*)$/ do |site_domain|

  site_domain = "http://sub.example.com" if site_domain == "admin"
  visit site_domain
end
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top