Sha256: 8cbf28b3e88b88929bb831c281f2cc6c336ae817abe52451bec24dd65bd4a2c1

Contents?: true

Size: 1.29 KB

Versions: 7

Compression:

Stored size: 1.29 KB

Contents

module OpsManagerUiDrivers
  module Version16
    class Networks
      def initialize(browser:)
        @browser = browser
      end

      def add_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
        open_form('network')

        browser.click_on 'Add'
        set_fields(
          fields: {
            'name' => name,
            'iaas_network_identifier' => iaas_network_identifier,
            'subnet' => subnet,
            'dns' => dns,
            'gateway' => gateway,
            'reserved_ip_ranges' => reserved_ip_ranges,
          }
        )
        save_form
      end

      private

      attr_reader :browser

      def save_form
        browser.click_on 'Save'
        browser.expect(browser.page).to browser.have_css('.flash-message.success')
      end

      def open_form(form)
        browser.visit '/'
        browser.click_on 'show-microbosh-configure-action'
        browser.click_on "show-#{form}-action"
      end

      def set_fields(fields:)
        fields.each do |field, value|
          set_field(field, value)
        end
      end

      def set_field(field, value)
        last_field(field).set(value)
      end

      def last_field(field)
        browser.all(:field, "network[networks][][#{field}]").last
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ops_manager_ui_drivers-1.0.0 lib/ops_manager_ui_drivers/version16/networks.rb
ops_manager_ui_drivers-0.16.0 lib/ops_manager_ui_drivers/version16/networks.rb
ops_manager_ui_drivers-0.15.2 lib/ops_manager_ui_drivers/version16/networks.rb
ops_manager_ui_drivers-0.15.1 lib/ops_manager_ui_drivers/version16/networks.rb
ops_manager_ui_drivers-0.15.0 lib/ops_manager_ui_drivers/version16/networks.rb
ops_manager_ui_drivers-0.14.1 lib/ops_manager_ui_drivers/version16/networks.rb
ops_manager_ui_drivers-0.14.0 lib/ops_manager_ui_drivers/version16/networks.rb