summaryrefslogtreecommitdiff
path: root/qa/qa/page/settings/common.rb
blob: 8cd0b6bb49ca86dc6fb24e5b9fb718bc02a82d98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# frozen_string_literal: true

module QA
  module Page
    module Settings
      module Common
        # Click the Expand button present in the specified section
        #
        # @param [Symbol] and `element` name defined in a `view` block
        def expand_section(element_name)
          within_element(element_name) do
            # Because it is possible to click the button before the JS toggle code is bound
            wait(reload: false) do
              click_button 'Expand' unless first('button', text: 'Collapse')

              has_content?('Collapse')
            end

            yield if block_given?
          end
        end
      end
    end
  end
end