mirror of
https://github.com/discourse/discourse.git
synced 2025-02-08 20:34:52 +00:00
67 lines
1.7 KiB
Ruby
67 lines
1.7 KiB
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
module PageObjects
|
||
|
module Modals
|
||
|
class BulkUserDeleteConfirmation < Base
|
||
|
MODAL_SELECTOR = ".bulk-user-delete-confirmation"
|
||
|
|
||
|
def confirm_button
|
||
|
within(modal) { find(".btn.confirm-delete") }
|
||
|
end
|
||
|
|
||
|
def has_confirm_button_disabled?
|
||
|
within(modal) { has_css?(".btn.confirm-delete[disabled]") }
|
||
|
end
|
||
|
|
||
|
def has_confirm_button_enabled?
|
||
|
within(modal) do
|
||
|
has_no_css?(".btn.confirm-delete[disabled]") && has_css?(".btn.confirm-delete")
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def fill_in_confirmation_phase(user_count:)
|
||
|
within(modal) do
|
||
|
find("input.confirmation-phrase").fill_in(
|
||
|
with:
|
||
|
I18n.t(
|
||
|
"admin_js.admin.users.bulk_actions.delete.confirmation_modal.confirmation_phrase",
|
||
|
count: user_count,
|
||
|
),
|
||
|
)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def has_successful_log_entry_for_user?(user:, position:, total:)
|
||
|
within(modal) do
|
||
|
has_css?(
|
||
|
".bulk-user-delete-confirmation__progress-line.-success",
|
||
|
text:
|
||
|
I18n.t(
|
||
|
"admin_js.admin.users.bulk_actions.delete.confirmation_modal.user_delete_succeeded",
|
||
|
position:,
|
||
|
total:,
|
||
|
username: user.username,
|
||
|
),
|
||
|
)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def has_no_error_log_entries?
|
||
|
within(modal) { has_no_css?(".bulk-user-delete-confirmation__progress-line.-error") }
|
||
|
end
|
||
|
|
||
|
def has_error_log_entry?(message)
|
||
|
within(modal) do
|
||
|
has_css?(".bulk-user-delete-confirmation__progress-line.-error", text: message)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
private
|
||
|
|
||
|
def modal
|
||
|
find(MODAL_SELECTOR)
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|