Skip to content

Commit

Permalink
Maintenance: Improve RSpec 'text modules group dependency examples'
Browse files Browse the repository at this point in the history
  • Loading branch information
Denny Bresch authored and thorsteneckel committed Aug 7, 2019

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
1 parent fae1949 commit 77d0b2d
Showing 2 changed files with 12 additions and 19 deletions.
4 changes: 4 additions & 0 deletions spec/support/capybara/selectors.rb
Original file line number Diff line number Diff line change
@@ -19,3 +19,7 @@
Capybara.add_selector(:richtext) do
css { |name| "div[data-name=#{name || 'body'}]" }
end

Capybara.add_selector(:text_module) do
css { |id| %(.shortcut > ul > li[data-id="#{id}"]) }
end
27 changes: 8 additions & 19 deletions spec/system/examples/text_modules_group_dependency_examples.rb
Original file line number Diff line number Diff line change
@@ -22,30 +22,19 @@
visit path

within(:active_content) do

selector_group_select = 'select[name="group_id"]'
selector_text_module_selection = '.shortcut'
selector_text_module_item = ".shortcut > ul > li[data-id='%s']"

# exercise
find(selector_group_select).find(:option, group1.name).select_option
find('select[name="group_id"]').select(group1.name)
find(:richtext).send_keys('::')

# expectations
expect(page).to have_css(selector_text_module_selection, wait: 3)
expect(page).to have_css(format(selector_text_module_item, text_module_without_group.id))
expect(page).to have_css(format(selector_text_module_item, text_module_group1.id))
expect(page).to have_no_css(format(selector_text_module_item, text_module_group2.id))
expect(page).to have_selector(:text_module, text_module_without_group.id)
expect(page).to have_selector(:text_module, text_module_group1.id)
expect(page).to have_no_selector(:text_module, text_module_group2.id)

# exercise
find(selector_group_select).find(:option, group2.name).select_option
find('select[name="group_id"]').select(group2.name)
find(:richtext).send_keys('::')

# expectations
expect(page).to have_css(selector_text_module_selection, wait: 3)
expect(page).to have_css(format(selector_text_module_item, text_module_without_group.id))
expect(page).to have_no_css(format(selector_text_module_item, text_module_group1.id))
expect(page).to have_css(format(selector_text_module_item, text_module_group2.id))
expect(page).to have_selector(:text_module, text_module_without_group.id)
expect(page).to have_no_selector(:text_module, text_module_group1.id)
expect(page).to have_selector(:text_module, text_module_group2.id)
end
end
end

0 comments on commit 77d0b2d

Please sign in to comment.