docbrown/spec/system/admin/admin_manages_profile_fields_spec.rb
Rajat Talesra 26c72096ba
Remove bootstrap classes : collapse hide show (#18917)
* Removed bootstrap from listing_categories, listings, navigation_links

* Removed not-used bootstrap classes from admin/tags

* Removed bootstrap from admin/settings

* Fix collapse glitch in profile-fields

* Feedback partial progress

* Feedback partial progress

* Removed form-control

* Replaced card with crayons-card

* Fixed profile field UI

* Removed collapse hide and show classes

* Removed collapse hide and show classes

* Removed collapse hide and show classes

* Nit height fix

* Nit width fix

* Updated tests
2023-01-06 21:25:49 +05:30

47 lines
1.7 KiB
Ruby

require "rails_helper"
RSpec.describe "Admin manages profile fields", type: :system do
let(:admin) { create(:user, :super_admin) }
let!(:profile_field_group) { create(:profile_field_group, name: "Delete Me") }
let(:label) { "Delete Me Too" }
before do
create(:profile_field, profile_field_group: profile_field_group, label: label)
Profile.refresh_attributes!
sign_in admin
visit admin_profile_fields_path
end
it "adds a profile group" do
click_button "Add group"
find("#add-group-modal #profile_field_group_name").set("Example group")
click_on "Create Profile field group"
expect(page).to have_text("Successfully created group: Example group")
end
it "adds a profile field" do
group_name = profile_field_group.name.gsub(/\s+/, "_")
within(find("#profile-field-group-#{profile_field_group.id}")) do
click_button("Add Field")
input = find("#add-#{group_name}-profile-field-modal #profile_field_label")
input.set("Example field")
click_on "Create Profile field"
end
expect(page).to have_text("Profile field Example field created")
end
it "deletes a profile_field_group" do
find("#profile-field-group-#{profile_field_group.id}").click_button("Delete Group")
expect(page).to have_text("Group #{profile_field_group.name} deleted")
end
it "deletes a profile_field" do
profile_field = ProfileField.find_by(label: label)
expect(page).to have_text(profile_field.label.to_s)
find("#profile-field-group-summary-#{profile_field_group.id}").click
find("#profile-field-summary-#{profile_field.id}").click
find("#profile-field-#{profile_field.id}").click_button("Delete Profile Field")
expect(page).to have_text("Profile field #{label} deleted")
end
end