Velocipede's User, Sales, and Bike Inventory Web App
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
1.8 KiB

12 years ago
step "I go to create a new team" do
visit new_team_path
end
step 'I go to the team list' do
visit teams_path
end
step "I should see the create a team form" do
page.should have_field 'Name'
page.should have_field 'Max members', :with => '16'
end
step "I submit the new team form" do
page.find('form#new_team').find('input[type=submit]').click
end
step "I fill out the team form with team name :team_name" do |team_name|
page.fill_in 'Name', :with => team_name
end
step "I check the box to make my team private" do
page.check "Private team?"
end
step 'I should see an error message about the team name' do
within 'form#new_team' do
page.should have_content "can't be blank"
end
end
step 'I should see :team_name in the team list' do |team_name|
within '.teams' do
page.should have_content(team_name)
end
end
step 'I should see :count teams in the team list' do |count|
within '.teams' do
page.all('h3.team').count.should == count.to_i
end
end
step 'the team list should be:' do |table|
within '.teams' do
actual = page.all('h3.team').collect { |h3| [h3.text] }
table.raw.should == actual
end
end
step 'I should have the option of joining the team' do
page.should have_button 'Join team'
end
step 'I should not have the option of joining the team' do
page.should have_no_button 'Join team'
end
step ':user_email should be in the team member list' do |user_email|
user = User.find_by_email(user_email)
assert user, "Could not find user by email: #{user_email}"
within '.members' do
page.should have_content user.to_s
end
end
step ':user_email captains the team :team_name' do |user_email, team_name|
user = User.find_by_email(user_email)
assert user, "Could not find user by email: #{user_email}"
FactoryGirl.create(:team, :name => team_name, :captain => user)
end