Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ckruse/3cb9367cb5d45f523cf7 to your computer and use it in GitHub Desktop.
Save ckruse/3cb9367cb5d45f523cf7 to your computer and use it in GitHub Desktop.
context "change" do
scenario "user updates a existing group", js: true do
project.user_projects.create!(user_id: user.user_id)
visit edit_project_calendar_group_path(project.slug, group)
expect(page.body).to have_field Calendar::Group.human_attribute_name :name
expect(page.body).to have_button 'Speichern'
fill_in Calendar::Group.human_attribute_name(:name), with: "Test-Group CK"
click_on "Administratoren"
page.find('#admins .users-selector .add-user').click
page.find('#admins .users-selector .user-list .glyphicon-plus').click
page.find('#admins .users-selector .ok').click
expect(page.body).to have_css("#admins input[value='" + user.user_id.to_s + "']")
click_on 'Mitglieder'
page.find('#members .users-selector .add-user').click
page.find('#members .users-selector .user-list .glyphicon-plus').click
page.find('#members .users-selector .ok').click
expect(page.body).to have_css("#members input[value='" + user.user_id.to_s + "']")
click_on "Speichern"
group.reload
expect(page.body).to have_content I18n.t('calendar.groups.updated')
expect(group.name).to eq "Test-Group CK"
expect(group.users).to eq [user]
expect(group.owners).to eq [user]
end
scenario "user fails to update a group" do
visit edit_project_calendar_group_path(project.slug, group)
expect(page.body).to have_field Calendar::Group.human_attribute_name :name
expect(page.body).to have_button 'Speichern'
fill_in Calendar::Group.human_attribute_name(:name), with: ''
click_on "Speichern"
expect(page.body).to have_content I18n.t('calendar.groups.update_group', name: group.name)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment