summaryrefslogtreecommitdiff
path: root/qa/lib/gitlab/page/subscriptions/new.rb
blob: 4c0e5446444d96640c75c64c409bb7a42675605a (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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# frozen_string_literal: true

module Gitlab
  module Page
    module Subscriptions
      class New < Chemlab::Page
        path '/subscriptions/new'

        # Subscription Details
        select :plan_name
        select :group_name
        text_field :number_of_users
        button :continue_to_billing, text: /Continue to billing/

        # Billing address
        select :country
        text_field :street_address_1
        text_field :street_address_2
        text_field :city
        select :state
        text_field :zip_code
        button :continue_to_payment, text: /Continue to payment/

        # Payment method
        # TODO: Revisit when https://gitlab.com/gitlab-org/quality/chemlab/-/issues/6 is closed
        iframe :payment_form, id: 'z_hppm_iframe'

        text_field(:name_on_card) { payment_form_element.text_field(id: 'input-creditCardHolderName') }
        text_field(:card_number) { payment_form_element.text_field(id: 'input-creditCardNumber') }
        select(:expiration_month) { payment_form_element.select(id: 'input-creditCardExpirationMonth') }
        select(:expiration_year) { payment_form_element.select(id: 'input-creditCardExpirationYear') }
        text_field(:cvv) { payment_form_element.text_field(id: 'input-cardSecurityCode') }
        link(:review_your_order) { payment_form_element.link(text: /Review your order/) }
        # ENDTODO

        # Confirmation
        button :confirm_purchase, text: /Confirm purchase/
      end
    end
  end
end