From 7ccf6f8c1b0e36eeea0e34ffbfde4cbc2dcc0451 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Fri, 18 Oct 2024 17:08:10 -0300 Subject: [PATCH 01/13] first commit --- lib/hq/graphql.rb | 2 ++ lib/hq/graphql/field_extension/paginated_arguments.rb | 2 +- lib/hq/graphql/inputs.rb | 1 + lib/hq/graphql/types.rb | 5 +++++ spec/internal/app/models/manager.rb | 2 +- 5 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/hq/graphql.rb b/lib/hq/graphql.rb index 0f2a506..862d528 100644 --- a/lib/hq/graphql.rb +++ b/lib/hq/graphql.rb @@ -41,6 +41,8 @@ def self.excluded_inputs end def self.lookup_resource(klass) + # klass = HasHelpers::User if klass.to_s == "User" + # byebug if klass.to_s == "HasHelpers::User" [klass, klass.base_class, klass.superclass].lazy.map do |k| config.resource_lookup.call(k) || resources.detect { |r| r.model_klass == k } end.reject(&:nil?).first diff --git a/lib/hq/graphql/field_extension/paginated_arguments.rb b/lib/hq/graphql/field_extension/paginated_arguments.rb index 8942d58..39fe559 100644 --- a/lib/hq/graphql/field_extension/paginated_arguments.rb +++ b/lib/hq/graphql/field_extension/paginated_arguments.rb @@ -11,7 +11,7 @@ def apply field.argument :offset, Integer, required: false field.argument :limit, Integer, required: false field.argument :sort_order, Enum::SortOrder, required: false - + # byebug resource = ::HQ::GraphQL.lookup_resource(options[:klass]) enum = resource ? resource.sort_fields_enum : ::HQ::GraphQL::Enum::SortBy field.argument :sort_by, enum, required: false diff --git a/lib/hq/graphql/inputs.rb b/lib/hq/graphql/inputs.rb index 18bfab8..2216d66 100644 --- a/lib/hq/graphql/inputs.rb +++ b/lib/hq/graphql/inputs.rb @@ -23,6 +23,7 @@ class << self private def klass_for(klass_or_string) + klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string resource = ::HQ::GraphQL.lookup_resource(klass) diff --git a/lib/hq/graphql/types.rb b/lib/hq/graphql/types.rb index cf5725e..03c4974 100644 --- a/lib/hq/graphql/types.rb +++ b/lib/hq/graphql/types.rb @@ -13,6 +13,10 @@ class Error < StandardError def self.registry @registry ||= Hash.new do |hash, options| klass, nil_klass = Array(options) + # byebug + # Aca sigue llegando solo User!!!! + # byebug if klass.to_s == "User" + klass = HasHelpers::User if klass.to_s == "User" hash[options] = nil_klass ? nil_query_object(klass) : klass_for(klass) end end @@ -70,6 +74,7 @@ def klass_for(klass_or_string) end def find_klass(klass_or_string, method) + klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string resource = ::HQ::GraphQL.lookup_resource(klass) diff --git a/spec/internal/app/models/manager.rb b/spec/internal/app/models/manager.rb index 2ee8e44..e70b9df 100644 --- a/spec/internal/app/models/manager.rb +++ b/spec/internal/app/models/manager.rb @@ -1,7 +1,7 @@ class Manager < ::ActiveRecord::Base belongs_to :organization - has_many :active_users, -> { where(inactive: [nil, false]) }, class_name: "User" + has_many :active_users, -> { where(inactive: [nil, false]) }, class_name: "::HasHelpers::User" has_many :users, inverse_of: :organization has_many :advisors, through: :users has_many :not_joe, -> { where.not(name: "Joe" ) }, through: :users, source: :advisor From 79c22f7b94132893a5681511dabb810ad2727453 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Thu, 31 Oct 2024 18:00:10 -0300 Subject: [PATCH 02/13] organization updated for specs --- lib/hq/graphql/types.rb | 2 +- spec/internal/app/models/advisor.rb | 2 +- spec/internal/app/models/manager.rb | 5 +++-- spec/internal/app/models/user.rb | 3 ++- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/hq/graphql/types.rb b/lib/hq/graphql/types.rb index 03c4974..843fd0f 100644 --- a/lib/hq/graphql/types.rb +++ b/lib/hq/graphql/types.rb @@ -15,7 +15,7 @@ def self.registry klass, nil_klass = Array(options) # byebug # Aca sigue llegando solo User!!!! - # byebug if klass.to_s == "User" + byebug if klass.to_s == "User" klass = HasHelpers::User if klass.to_s == "User" hash[options] = nil_klass ? nil_query_object(klass) : klass_for(klass) end diff --git a/spec/internal/app/models/advisor.rb b/spec/internal/app/models/advisor.rb index 381bedb..b5b22a5 100644 --- a/spec/internal/app/models/advisor.rb +++ b/spec/internal/app/models/advisor.rb @@ -1,5 +1,5 @@ class Advisor < ActiveRecord::Base - belongs_to :organization + belongs_to :organization, class_name: "::HasHelpers::Organization" def hydrate end diff --git a/spec/internal/app/models/manager.rb b/spec/internal/app/models/manager.rb index e70b9df..73e66dd 100644 --- a/spec/internal/app/models/manager.rb +++ b/spec/internal/app/models/manager.rb @@ -1,8 +1,9 @@ class Manager < ::ActiveRecord::Base - belongs_to :organization + belongs_to :organization, class_name: "::HasHelpers::Organization" has_many :active_users, -> { where(inactive: [nil, false]) }, class_name: "::HasHelpers::User" - has_many :users, inverse_of: :organization + # has_many :users, inverse_of: :organization + has_many :users, class_name: "::HasHelpers::User" has_many :advisors, through: :users has_many :not_joe, -> { where.not(name: "Joe" ) }, through: :users, source: :advisor end diff --git a/spec/internal/app/models/user.rb b/spec/internal/app/models/user.rb index c96e836..d1bf213 100644 --- a/spec/internal/app/models/user.rb +++ b/spec/internal/app/models/user.rb @@ -1,7 +1,8 @@ class User < ::ActiveRecord::Base belongs_to :advisor, optional: true belongs_to :manager, optional: true - belongs_to :organization + has_many :user_organizations, dependent: :destroy, class_name: "::HasHelpers::UserOrganization" + has_many :organizations, class_name: "::HasHelpers::Organization", through: :user_organizations def hydrate end From 86def6253fe789090c76b97db12b833ce8b773a3 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Tue, 5 Nov 2024 17:38:33 -0300 Subject: [PATCH 03/13] gema updated --- lib/hq/graphql/inputs.rb | 3 ++- lib/hq/graphql/types.rb | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/hq/graphql/inputs.rb b/lib/hq/graphql/inputs.rb index 2216d66..9f37ce8 100644 --- a/lib/hq/graphql/inputs.rb +++ b/lib/hq/graphql/inputs.rb @@ -23,7 +23,8 @@ class << self private def klass_for(klass_or_string) - klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" + # byebug if klass_or_string.to_s == "User" + # klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string resource = ::HQ::GraphQL.lookup_resource(klass) diff --git a/lib/hq/graphql/types.rb b/lib/hq/graphql/types.rb index 843fd0f..58c099b 100644 --- a/lib/hq/graphql/types.rb +++ b/lib/hq/graphql/types.rb @@ -15,8 +15,8 @@ def self.registry klass, nil_klass = Array(options) # byebug # Aca sigue llegando solo User!!!! - byebug if klass.to_s == "User" - klass = HasHelpers::User if klass.to_s == "User" + # byebug if klass.to_s == "User" + # klass = HasHelpers::User if klass.to_s == "User" hash[options] = nil_klass ? nil_query_object(klass) : klass_for(klass) end end @@ -74,7 +74,8 @@ def klass_for(klass_or_string) end def find_klass(klass_or_string, method) - klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" + # byebug if klass_or_string.to_s == "User" + # klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string resource = ::HQ::GraphQL.lookup_resource(klass) From 39edfb712a4111ca5122c6bba0479ccf2ed65d77 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Wed, 20 Nov 2024 13:52:16 -0300 Subject: [PATCH 04/13] erased commented codes --- lib/hq/graphql.rb | 2 -- lib/hq/graphql/field_extension/paginated_arguments.rb | 2 +- lib/hq/graphql/inputs.rb | 2 -- lib/hq/graphql/types.rb | 6 ------ spec/internal/app/models/manager.rb | 4 ++-- 5 files changed, 3 insertions(+), 13 deletions(-) diff --git a/lib/hq/graphql.rb b/lib/hq/graphql.rb index 862d528..0f2a506 100644 --- a/lib/hq/graphql.rb +++ b/lib/hq/graphql.rb @@ -41,8 +41,6 @@ def self.excluded_inputs end def self.lookup_resource(klass) - # klass = HasHelpers::User if klass.to_s == "User" - # byebug if klass.to_s == "HasHelpers::User" [klass, klass.base_class, klass.superclass].lazy.map do |k| config.resource_lookup.call(k) || resources.detect { |r| r.model_klass == k } end.reject(&:nil?).first diff --git a/lib/hq/graphql/field_extension/paginated_arguments.rb b/lib/hq/graphql/field_extension/paginated_arguments.rb index 39fe559..8942d58 100644 --- a/lib/hq/graphql/field_extension/paginated_arguments.rb +++ b/lib/hq/graphql/field_extension/paginated_arguments.rb @@ -11,7 +11,7 @@ def apply field.argument :offset, Integer, required: false field.argument :limit, Integer, required: false field.argument :sort_order, Enum::SortOrder, required: false - # byebug + resource = ::HQ::GraphQL.lookup_resource(options[:klass]) enum = resource ? resource.sort_fields_enum : ::HQ::GraphQL::Enum::SortBy field.argument :sort_by, enum, required: false diff --git a/lib/hq/graphql/inputs.rb b/lib/hq/graphql/inputs.rb index 9f37ce8..18bfab8 100644 --- a/lib/hq/graphql/inputs.rb +++ b/lib/hq/graphql/inputs.rb @@ -23,8 +23,6 @@ class << self private def klass_for(klass_or_string) - # byebug if klass_or_string.to_s == "User" - # klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string resource = ::HQ::GraphQL.lookup_resource(klass) diff --git a/lib/hq/graphql/types.rb b/lib/hq/graphql/types.rb index 58c099b..cf5725e 100644 --- a/lib/hq/graphql/types.rb +++ b/lib/hq/graphql/types.rb @@ -13,10 +13,6 @@ class Error < StandardError def self.registry @registry ||= Hash.new do |hash, options| klass, nil_klass = Array(options) - # byebug - # Aca sigue llegando solo User!!!! - # byebug if klass.to_s == "User" - # klass = HasHelpers::User if klass.to_s == "User" hash[options] = nil_klass ? nil_query_object(klass) : klass_for(klass) end end @@ -74,8 +70,6 @@ def klass_for(klass_or_string) end def find_klass(klass_or_string, method) - # byebug if klass_or_string.to_s == "User" - # klass_or_string = HasHelpers::User if klass_or_string.to_s == "User" klass = klass_or_string.is_a?(String) ? klass_or_string.constantize : klass_or_string resource = ::HQ::GraphQL.lookup_resource(klass) diff --git a/spec/internal/app/models/manager.rb b/spec/internal/app/models/manager.rb index 73e66dd..d94d744 100644 --- a/spec/internal/app/models/manager.rb +++ b/spec/internal/app/models/manager.rb @@ -1,9 +1,9 @@ class Manager < ::ActiveRecord::Base belongs_to :organization, class_name: "::HasHelpers::Organization" - + has_many :user_organizations, class_name: "::HasHelpers::UserOrganization" has_many :active_users, -> { where(inactive: [nil, false]) }, class_name: "::HasHelpers::User" # has_many :users, inverse_of: :organization - has_many :users, class_name: "::HasHelpers::User" + has_many :users, class_name: "::HasHelpers::User", through: :user_organizations has_many :advisors, through: :users has_many :not_joe, -> { where.not(name: "Joe" ) }, through: :users, source: :advisor end From dea5332bea62273d23d3f0d858071e0c30a8408c Mon Sep 17 00:00:00 2001 From: neryam3 Date: Wed, 20 Nov 2024 14:05:38 -0300 Subject: [PATCH 05/13] Update user.rb --- spec/internal/app/models/user.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spec/internal/app/models/user.rb b/spec/internal/app/models/user.rb index d1bf213..21f045a 100644 --- a/spec/internal/app/models/user.rb +++ b/spec/internal/app/models/user.rb @@ -1,8 +1,8 @@ class User < ::ActiveRecord::Base belongs_to :advisor, optional: true belongs_to :manager, optional: true - has_many :user_organizations, dependent: :destroy, class_name: "::HasHelpers::UserOrganization" - has_many :organizations, class_name: "::HasHelpers::Organization", through: :user_organizations + has_many :user_organizations, dependent: :destroy, class_name: "::HasHelpers::UserOrganization", inverse_of: :user + has_many :organizations, class_name: "::HasHelpers::Organization", through: :user_organizations, inverse_of: :users def hydrate end From 84aa063c8b762c9f8ff67473c28a0ba1a3fc0b01 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Fri, 10 Jan 2025 21:07:49 -0300 Subject: [PATCH 06/13] updated after rebase --- spec/lib/graphql/object_association_spec.rb | 2 +- spec/lib/graphql/paginated_association_loader_spec.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/spec/lib/graphql/object_association_spec.rb b/spec/lib/graphql/object_association_spec.rb index b34cb75..25df4e9 100644 --- a/spec/lib/graphql/object_association_spec.rb +++ b/spec/lib/graphql/object_association_spec.rb @@ -14,7 +14,7 @@ scope do |name: nil| if name - User.where(name: name) + ::HasHelpers::User.where(name: name) end end end diff --git a/spec/lib/graphql/paginated_association_loader_spec.rb b/spec/lib/graphql/paginated_association_loader_spec.rb index 88434a1..15b57ac 100644 --- a/spec/lib/graphql/paginated_association_loader_spec.rb +++ b/spec/lib/graphql/paginated_association_loader_spec.rb @@ -90,7 +90,7 @@ def load(association, **options) user3.update(advisor: advisor3) # Create dummy data to verify data is properly filtered - other_user = ::User.find_by(manager: manager2) + other_user = ::HasHelpers::User.find_by(manager: manager2) 2.times do advisor = ::FactoryBot.create(:advisor, organization: organization) other_user.update(advisor: advisor) From cc52e9ec8625f0a67b6d6d63273a38d296e6fcbf Mon Sep 17 00:00:00 2001 From: neryam3 Date: Wed, 22 Jan 2025 10:17:17 -0300 Subject: [PATCH 07/13] spec updated --- spec/internal/app/models/user.rb | 5 +++-- spec/internal/app/models/user_organization.rb | 2 ++ spec/lib/graphql/types_spec.rb | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 spec/internal/app/models/user_organization.rb diff --git a/spec/internal/app/models/user.rb b/spec/internal/app/models/user.rb index 21f045a..9367343 100644 --- a/spec/internal/app/models/user.rb +++ b/spec/internal/app/models/user.rb @@ -1,8 +1,9 @@ class User < ::ActiveRecord::Base belongs_to :advisor, optional: true belongs_to :manager, optional: true - has_many :user_organizations, dependent: :destroy, class_name: "::HasHelpers::UserOrganization", inverse_of: :user - has_many :organizations, class_name: "::HasHelpers::Organization", through: :user_organizations, inverse_of: :users + belongs_to :organization + # has_many :user_organizations, dependent: :destroy, class_name: "::HasHelpers::UserOrganization", inverse_of: :user + # has_many :organizations, class_name: "::HasHelpers::Organization", through: :user_organizations, inverse_of: :users def hydrate end diff --git a/spec/internal/app/models/user_organization.rb b/spec/internal/app/models/user_organization.rb new file mode 100644 index 0000000..2bd6961 --- /dev/null +++ b/spec/internal/app/models/user_organization.rb @@ -0,0 +1,2 @@ +class UserOrganization < ::ActiveRecord::Base +end diff --git a/spec/lib/graphql/types_spec.rb b/spec/lib/graphql/types_spec.rb index e8b7585..236531a 100644 --- a/spec/lib/graphql/types_spec.rb +++ b/spec/lib/graphql/types_spec.rb @@ -36,7 +36,7 @@ end it "raises an exception for unknown types" do - expect { described_class[Organization] }.to raise_error(described_class::Error) + expect { described_class[::HasHelpers::Organization] }.to raise_error(described_class::Error) end it "works with sti" do From 7b855b2b3af0b073295f633238693f1875f45b08 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Mon, 10 Feb 2025 10:09:50 -0300 Subject: [PATCH 08/13] Update graphql.rb --- lib/hq/graphql.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/hq/graphql.rb b/lib/hq/graphql.rb index 0f2a506..ca60fd6 100644 --- a/lib/hq/graphql.rb +++ b/lib/hq/graphql.rb @@ -41,6 +41,7 @@ def self.excluded_inputs end def self.lookup_resource(klass) + klass = HasHelpers::Organization if klass.to_s == "Organization" [klass, klass.base_class, klass.superclass].lazy.map do |k| config.resource_lookup.call(k) || resources.detect { |r| r.model_klass == k } end.reject(&:nil?).first From 4b291696110790411eaf182febfda9d5ea069f3d Mon Sep 17 00:00:00 2001 From: neryam3 Date: Mon, 10 Feb 2025 10:38:18 -0300 Subject: [PATCH 09/13] Update graphql.rb --- lib/hq/graphql.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/hq/graphql.rb b/lib/hq/graphql.rb index ca60fd6..5f6da81 100644 --- a/lib/hq/graphql.rb +++ b/lib/hq/graphql.rb @@ -41,7 +41,11 @@ def self.excluded_inputs end def self.lookup_resource(klass) - klass = HasHelpers::Organization if klass.to_s == "Organization" + if klass.to_s == "Organization" + klass = HasHelpers::Organization + elsif klass.to_s == "User" + klass = HasHelpers::User if klass.to_s == "User" + end [klass, klass.base_class, klass.superclass].lazy.map do |k| config.resource_lookup.call(k) || resources.detect { |r| r.model_klass == k } end.reject(&:nil?).first From 7193b76130dad456803245f5e875ca769a96ebf5 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Mon, 10 Feb 2025 11:24:11 -0300 Subject: [PATCH 10/13] Update graphql.rb --- lib/hq/graphql.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/hq/graphql.rb b/lib/hq/graphql.rb index 5f6da81..0e90e0d 100644 --- a/lib/hq/graphql.rb +++ b/lib/hq/graphql.rb @@ -44,7 +44,7 @@ def self.lookup_resource(klass) if klass.to_s == "Organization" klass = HasHelpers::Organization elsif klass.to_s == "User" - klass = HasHelpers::User if klass.to_s == "User" + klass = HasHelpers::User end [klass, klass.base_class, klass.superclass].lazy.map do |k| config.resource_lookup.call(k) || resources.detect { |r| r.model_klass == k } From 09638928f7cad67ff76f14100f1e5f02cf955235 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Thu, 27 Mar 2025 12:13:49 -0300 Subject: [PATCH 11/13] without spec changes --- spec/internal/app/models/advisor.rb | 2 +- spec/internal/app/models/manager.rb | 9 ++++----- spec/internal/app/models/user.rb | 2 -- spec/lib/graphql/object_association_spec.rb | 2 +- spec/lib/graphql/paginated_association_loader_spec.rb | 2 +- spec/lib/graphql/types_spec.rb | 2 +- 6 files changed, 8 insertions(+), 11 deletions(-) diff --git a/spec/internal/app/models/advisor.rb b/spec/internal/app/models/advisor.rb index b5b22a5..381bedb 100644 --- a/spec/internal/app/models/advisor.rb +++ b/spec/internal/app/models/advisor.rb @@ -1,5 +1,5 @@ class Advisor < ActiveRecord::Base - belongs_to :organization, class_name: "::HasHelpers::Organization" + belongs_to :organization def hydrate end diff --git a/spec/internal/app/models/manager.rb b/spec/internal/app/models/manager.rb index d94d744..2ee8e44 100644 --- a/spec/internal/app/models/manager.rb +++ b/spec/internal/app/models/manager.rb @@ -1,9 +1,8 @@ class Manager < ::ActiveRecord::Base - belongs_to :organization, class_name: "::HasHelpers::Organization" - has_many :user_organizations, class_name: "::HasHelpers::UserOrganization" - has_many :active_users, -> { where(inactive: [nil, false]) }, class_name: "::HasHelpers::User" - # has_many :users, inverse_of: :organization - has_many :users, class_name: "::HasHelpers::User", through: :user_organizations + belongs_to :organization + + has_many :active_users, -> { where(inactive: [nil, false]) }, class_name: "User" + has_many :users, inverse_of: :organization has_many :advisors, through: :users has_many :not_joe, -> { where.not(name: "Joe" ) }, through: :users, source: :advisor end diff --git a/spec/internal/app/models/user.rb b/spec/internal/app/models/user.rb index 9367343..c96e836 100644 --- a/spec/internal/app/models/user.rb +++ b/spec/internal/app/models/user.rb @@ -2,8 +2,6 @@ class User < ::ActiveRecord::Base belongs_to :advisor, optional: true belongs_to :manager, optional: true belongs_to :organization - # has_many :user_organizations, dependent: :destroy, class_name: "::HasHelpers::UserOrganization", inverse_of: :user - # has_many :organizations, class_name: "::HasHelpers::Organization", through: :user_organizations, inverse_of: :users def hydrate end diff --git a/spec/lib/graphql/object_association_spec.rb b/spec/lib/graphql/object_association_spec.rb index 25df4e9..b34cb75 100644 --- a/spec/lib/graphql/object_association_spec.rb +++ b/spec/lib/graphql/object_association_spec.rb @@ -14,7 +14,7 @@ scope do |name: nil| if name - ::HasHelpers::User.where(name: name) + User.where(name: name) end end end diff --git a/spec/lib/graphql/paginated_association_loader_spec.rb b/spec/lib/graphql/paginated_association_loader_spec.rb index 15b57ac..88434a1 100644 --- a/spec/lib/graphql/paginated_association_loader_spec.rb +++ b/spec/lib/graphql/paginated_association_loader_spec.rb @@ -90,7 +90,7 @@ def load(association, **options) user3.update(advisor: advisor3) # Create dummy data to verify data is properly filtered - other_user = ::HasHelpers::User.find_by(manager: manager2) + other_user = ::User.find_by(manager: manager2) 2.times do advisor = ::FactoryBot.create(:advisor, organization: organization) other_user.update(advisor: advisor) diff --git a/spec/lib/graphql/types_spec.rb b/spec/lib/graphql/types_spec.rb index 236531a..e8b7585 100644 --- a/spec/lib/graphql/types_spec.rb +++ b/spec/lib/graphql/types_spec.rb @@ -36,7 +36,7 @@ end it "raises an exception for unknown types" do - expect { described_class[::HasHelpers::Organization] }.to raise_error(described_class::Error) + expect { described_class[Organization] }.to raise_error(described_class::Error) end it "works with sti" do From d2b9ea0bf65a44ce72f0f16734c40616b596f86d Mon Sep 17 00:00:00 2001 From: neryam3 Date: Fri, 22 Aug 2025 16:13:52 -0300 Subject: [PATCH 12/13] Update resource.rb --- lib/hq/graphql/resource.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/hq/graphql/resource.rb b/lib/hq/graphql/resource.rb index a0fc458..cc6bb3e 100644 --- a/lib/hq/graphql/resource.rb +++ b/lib/hq/graphql/resource.rb @@ -218,7 +218,7 @@ def def_root(field_name, is_array: false, null: true, new_query: false, &block) class_eval(&block) if block end - constant_name = "#{field_name.to_s.classify}Resolver" + constant_name = "#{field_name.to_s.classify.demodulize}Resolver" resource.send(:remove_const, constant_name) if resource.const_defined?(constant_name, false) resource.const_set(constant_name, klass) } @@ -233,7 +233,7 @@ def def_root(field_name, is_array: false, null: true, new_query: false, &block) class_eval(&block) if block end - constant_name = "#{field_name.to_s.classify}Resolver#{suffix}" + constant_name = "#{field_name.to_s.classify.demodulize}Resolver#{suffix}" resource.send(:remove_const, constant_name) if resource.const_defined?(constant_name, false) resource.const_set(constant_name, klass) } From 1c540e1c3c2443b77b72310b7c0098bb07773974 Mon Sep 17 00:00:00 2001 From: neryam3 Date: Fri, 22 Aug 2025 16:28:48 -0300 Subject: [PATCH 13/13] spec/internal/app/models/user_organization.rb removed --- lib/hq/graphql.rb | 5 ----- spec/internal/app/models/user_organization.rb | 2 -- 2 files changed, 7 deletions(-) delete mode 100644 spec/internal/app/models/user_organization.rb diff --git a/lib/hq/graphql.rb b/lib/hq/graphql.rb index 0e90e0d..0f2a506 100644 --- a/lib/hq/graphql.rb +++ b/lib/hq/graphql.rb @@ -41,11 +41,6 @@ def self.excluded_inputs end def self.lookup_resource(klass) - if klass.to_s == "Organization" - klass = HasHelpers::Organization - elsif klass.to_s == "User" - klass = HasHelpers::User - end [klass, klass.base_class, klass.superclass].lazy.map do |k| config.resource_lookup.call(k) || resources.detect { |r| r.model_klass == k } end.reject(&:nil?).first diff --git a/spec/internal/app/models/user_organization.rb b/spec/internal/app/models/user_organization.rb deleted file mode 100644 index 2bd6961..0000000 --- a/spec/internal/app/models/user_organization.rb +++ /dev/null @@ -1,2 +0,0 @@ -class UserOrganization < ::ActiveRecord::Base -end