From 579b09088fe89c92901d6144f801f2c8edbf0564 Mon Sep 17 00:00:00 2001 From: Andrew Kane Date: Thu, 26 Jun 2014 00:33:52 -0700 Subject: [PATCH] Fixed with_details for json option --- lib/searchkick/query.rb | 3 ++- lib/searchkick/results.rb | 2 +- test/highlight_test.rb | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/searchkick/query.rb b/lib/searchkick/query.rb index 280c4f8..9f1b861 100644 --- a/lib/searchkick/query.rb +++ b/lib/searchkick/query.rb @@ -396,7 +396,8 @@ module Searchkick per_page: @per_page, padding: @padding, load: @load, - includes: options[:include] || options[:includes] + includes: options[:include] || options[:includes], + json: !options[:json].nil? } Searchkick::Results.new(searchkick_klass, response, opts) end diff --git a/lib/searchkick/results.rb b/lib/searchkick/results.rb index 2196872..a278245 100644 --- a/lib/searchkick/results.rb +++ b/lib/searchkick/results.rb @@ -67,7 +67,7 @@ module Searchkick each_with_hit.map do |model, hit| details = {} if hit["highlight"] - details[:highlight] = Hash[ hit["highlight"].map{|k, v| [k.sub(/\.analyzed\z/, "").to_sym, v.first] } ] + details[:highlight] = Hash[ hit["highlight"].map{|k, v| [options[:json] ? k : k.sub(/\.analyzed\z/, "").to_sym, v.first] } ] end [model, details] end diff --git a/test/highlight_test.rb b/test/highlight_test.rb index 6827e39..9c84ed3 100644 --- a/test/highlight_test.rb +++ b/test/highlight_test.rb @@ -35,7 +35,7 @@ class TestHighlight < Minitest::Unit::TestCase } } } - assert_equal "Two Door Cinema Club", Product.search(json: json).response["hits"]["hits"].first["highlight"]["name.analyzed"].first + assert_equal "Two Door Cinema Club", Product.search(json: json).with_details.first[1][:highlight]["name.analyzed"] end end -- libgit2 0.21.0