diff --git a/lib/discourse_translator/inline_translation.rb b/lib/discourse_translator/inline_translation.rb index dc3ad15d..6aec3998 100644 --- a/lib/discourse_translator/inline_translation.rb +++ b/lib/discourse_translator/inline_translation.rb @@ -65,23 +65,6 @@ def inject(plugin) !object.topic.locale_matches?(InlineTranslation.effective_locale) && object.topic.translation_for(InlineTranslation.effective_locale).present? end - - plugin.register_topic_preloader_associations( - { - association: :content_locale, - condition: -> do - SiteSetting.translator_enabled && SiteSetting.experimental_inline_translation - end, - }, - ) - plugin.register_topic_preloader_associations( - { - association: :translations, - condition: -> do - SiteSetting.translator_enabled && SiteSetting.experimental_inline_translation - end, - }, - ) end end end diff --git a/spec/serializers/topic_list_serializer_spec.rb b/spec/serializers/topic_list_serializer_spec.rb deleted file mode 100644 index 8ae41144..00000000 --- a/spec/serializers/topic_list_serializer_spec.rb +++ /dev/null @@ -1,48 +0,0 @@ -# frozen_string_literal: true - -describe TopicListSerializer do - fab!(:topic1) { Fabricate(:topic) } - fab!(:topic2) { Fabricate(:topic) } - fab!(:topic3) { Fabricate(:topic) } - fab!(:user) - - let(:topic_list) { TopicList.new(nil, user, [topic1, topic2, topic3]) } - - before do - SiteSetting.translator_enabled = true - SiteSetting.experimental_inline_translation = true - - # required for other core parts of topic_view - [topic1, topic2, topic3].each { |topic| topic.tap { |t| t.allowed_user_ids = [t.user_id] } } - end - - describe "preloading" do - it "preloads locale and translations without N+1 queries" do - serializer = described_class.new(topic_list, scope: Guardian.new(user)) - - queries = track_sql_queries { serializer.as_json } - - locale_queries = queries.count { |q| q.include?("discourse_translator_topic_locales") } - expect(locale_queries).to eq(1) # would be 3 if not preloaded - - translation_queries = - queries.count { |q| q.include?("discourse_translator_topic_translations") } - expect(translation_queries).to eq(1) # would be 3 if not preloaded - - expect(topic_list.topics.first.association(:content_locale)).to be_loaded - end - - it "never preloads translations if SiteSetting.experimental_inline_translations is false" do - SiteSetting.experimental_inline_translation = false - - serializer = described_class.new(topic_list, scope: Guardian.new(user)) - queries = track_sql_queries { serializer.as_json } - - locale_queries = queries.count { |q| q.include?("discourse_translator_topic_locales") } - expect(locale_queries).to eq(0) - translation_queries = - queries.count { |q| q.include?("discourse_translator_topic_translations") } - expect(translation_queries).to eq(0) - end - end -end