2021-11-18 22:05:49 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module Gitlab
|
|
|
|
module Page
|
|
|
|
module Group
|
|
|
|
module Settings
|
|
|
|
class UsageQuotas < Chemlab::Page
|
|
|
|
link :pipeline_tab, id: 'pipelines-quota'
|
|
|
|
link :storage_tab, id: 'storage-quota'
|
|
|
|
link :buy_ci_minutes, text: 'Buy additional minutes'
|
|
|
|
link :buy_storage, text: /Purchase more storage/
|
2022-01-26 12:08:38 +05:30
|
|
|
div :plan_ci_minutes
|
|
|
|
div :additional_ci_minutes
|
|
|
|
span :purchased_usage_total
|
|
|
|
div :ci_purchase_successful_alert, text: /You have successfully purchased CI minutes/
|
|
|
|
div :storage_purchase_successful_alert, text: /You have successfully purchased a storage/
|
2022-07-16 23:28:13 +05:30
|
|
|
h2 :storage_available_alert, text: /purchased storage is available/
|
2021-11-18 22:05:49 +05:30
|
|
|
|
2022-01-26 12:08:38 +05:30
|
|
|
def plan_ci_limits
|
|
|
|
plan_ci_minutes_element.span.text[%r{([^/ ]+)$}]
|
2021-11-18 22:05:49 +05:30
|
|
|
end
|
|
|
|
|
2022-01-26 12:08:38 +05:30
|
|
|
def additional_ci_limits
|
|
|
|
additional_ci_minutes_element.span.text[%r{([^/ ]+)$}]
|
|
|
|
end
|
|
|
|
|
|
|
|
# Waits and Checks if storage available alert presents on the page
|
|
|
|
#
|
|
|
|
# @return [Boolean] True if the alert presents, false if not after 5 second wait
|
|
|
|
def purchased_storage_available?
|
|
|
|
storage_available_alert_element.wait_until(timeout: 5, &:present?)
|
|
|
|
rescue Watir::Wait::TimeoutError
|
|
|
|
false
|
|
|
|
end
|
|
|
|
|
|
|
|
# Returns total purchased storage value once it's ready on page
|
|
|
|
#
|
|
|
|
# @return [Float] Total purchased storage value in GiB
|
|
|
|
def total_purchased_storage
|
|
|
|
storage_available_alert_element.wait_until(&:present?)
|
|
|
|
purchased_usage_total.to_f
|
2021-11-18 22:05:49 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|