|
1 | 1 | RSpec.describe 'Add a user to an existing workshop', js: true, type: :feature do
|
2 | 2 | let(:member) {Fabricate(:member)}
|
3 | 3 |
|
4 |
| - let(:juliet) {Fabricate(:member, name: 'Juliet', surname: 'Capulet')} |
5 |
| - let(:romeo) {Fabricate(:member, name: 'Romeo', surname: 'Montague')} |
| 4 | + let!(:juliet) {Fabricate(:member, name: 'Juliet', surname: 'Capulet')} |
| 5 | + let!(:romeo) { Fabricate(:member, name: 'Romeo', surname: 'Montague') } |
6 | 6 | let(:workshop) {Fabricate(:workshop)}
|
7 | 7 |
|
8 | 8 | before do
|
|
20 | 20 | expect(page).to have_current_path(@start_page, ignore_query: true)
|
21 | 21 | end
|
22 | 22 |
|
23 |
| - # scenario 'An admin adds a member to a workshop' do |
24 |
| - # assert false |
25 |
| - # end |
| 23 | + scenario 'An admin adds a member to a workshop' do |
| 24 | + visit @start_page |
| 25 | + |
| 26 | + params = {callback_url: @start_page.to_s}.to_query |
| 27 | + visit "/admin/member-search?#{params}" |
| 28 | + fill_in 'Member Name', with: 'e' |
| 29 | + click_on 'Search' |
| 30 | + expect(page).to have_current_path('/admin/member-search/index', ignore_query: true) |
| 31 | + |
| 32 | + expect(page).to have_content('Romeo Montague') |
| 33 | + expect(page).to have_unchecked_field('Romeo Montague') |
| 34 | + check('Romeo Montague') |
| 35 | + click_button'Take me back' |
| 36 | + |
| 37 | + expect(page).to have_current_path(@start_page, ignore_query: true) |
| 38 | + uri = URI.parse(page.current_url) |
| 39 | + params = Rack::Utils.parse_nested_query(uri.query).with_indifferent_access |
| 40 | + |
| 41 | + expect(params[:member_pick][:members]).to eq([romeo.id.to_s]) |
| 42 | + end |
26 | 43 | #
|
27 | 44 | # scenario 'An admin adds multiple members to a workshop' do
|
28 | 45 | # assert false
|
|
0 commit comments