# frozen_string_literal: true RSpec.describe UserCustomField do describe ".searchable" do it "includes user_custom_fields with valid, searchable user_field references" do Fabricate(:user_field, id: 123, searchable: true) valid_user_custom_field = Fabricate(:user_custom_field, name: "user_field_123") result = UserCustomField.searchable expect(result).to include(valid_user_custom_field) end it "excludes user_custom_fields with non-searchable user_field references" do Fabricate(:user_field, id: 456, searchable: false) non_searchable_custom_field = Fabricate(:user_custom_field, name: "user_field_456") result = UserCustomField.searchable expect(result).not_to include(non_searchable_custom_field) end it "excludes user_custom_fields with invalid user_field references" do invalid_user_custom_field = Fabricate(:user_custom_field, name: "user_field_invalid") result = UserCustomField.searchable expect(result).not_to include(invalid_user_custom_field) end it "excludes user_custom_fields with unrelated names" do unrelated_custom_field = Fabricate(:user_custom_field, name: "cost_center") result = UserCustomField.searchable expect(result).not_to include(unrelated_custom_field) end end end