Browse Source

refactored the feature

cucumber-rails
JG 3 years ago
parent
commit
f60381d9d1
  1. 7
      features/sign_in.feature
  2. 32
      features/step_definitions/sign_in_steps.rb

7
features/sign_in.feature

@ -1,8 +1,13 @@
Feature: Sign in
Scenario: Signing in
Given There is a user in the database
Given There is a "Data Coordinator" user in the database
When I visit the sign in page
And I fill in the sign in form
And I click the sign in button
Then I should see the logs page
Scenario: Signing out
Given I am signed in as "Data Coordinator"
When I click the sign out button
Then I should see the root page

32
features/step_definitions/sign_in_steps.rb

@ -1,20 +1,34 @@
Given('There is a user in the database') do
@user = create :user
When("I visit the sign in page") do
visit "/account/sign-in"
end
When('I visit the sign in page') do
visit("/account/sign-in")
end
When('I fill in the sign in form') do
When("I fill in the sign in form") do
fill_in("user[email]", with: @user.email)
fill_in("user[password]", with: @user.password)
end
When('I click the sign in button') do
When("I click the sign in button") do
click_button("Sign in")
end
Then('I should see the logs page') do
Then("I should see the logs page") do
expect(page).to have_current_path("/logs")
end
Then("I should see the root page") do
end
Given("There is a {string} user in the database") do |role|
@user = create :user, role: role.parameterize(separator: "_")
end
Given("I am signed in as {string}") do |role|
step "There is a \"#{role}\" user in the database"
step "I visit the sign in page"
step "I fill in the sign in form"
step "I click the sign in button"
end
When("I click the sign out button") do
click_link("Sign out")
end

Loading…
Cancel
Save