delsolr 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/delsolr/response.rb +20 -5
- data/test/test_response.rb +15 -1
- metadata +29 -37
data/lib/delsolr/response.rb
CHANGED
@@ -90,13 +90,28 @@ module DelSolr
|
|
90
90
|
# solr is super-weird about the way it returns suggestions,
|
91
91
|
# hence this strangeness:
|
92
92
|
# 'spellcheck'=>{'suggestions'=>['fishh',{'numFound'=>1,'startOffset'=>0,'endOffset'=>4,'suggestion'=>['fish']},'collation','fish']}
|
93
|
-
def
|
94
|
-
@
|
95
|
-
collation = nil
|
96
|
-
|
97
|
-
|
93
|
+
def collation_with_correction
|
94
|
+
@collation_with_correction ||= begin
|
95
|
+
collation, correction = nil, {}
|
96
|
+
if suggestions
|
97
|
+
(suggestions.length/2).times do |i|
|
98
|
+
k = suggestions[i*2]
|
99
|
+
v = suggestions[i*2+1]
|
100
|
+
collation = v if k == 'collation'
|
101
|
+
correction[k] = v['suggestion'][0] if v.is_a?(Hash)
|
102
|
+
end
|
103
|
+
end
|
104
|
+
{'collation' => collation, 'correction' => correction}
|
98
105
|
end
|
99
106
|
end
|
107
|
+
|
108
|
+
def correction
|
109
|
+
collation_with_correction['correction']
|
110
|
+
end
|
111
|
+
|
112
|
+
def collation
|
113
|
+
collation_with_correction['collation']
|
114
|
+
end
|
100
115
|
|
101
116
|
# Returns the query time in ms
|
102
117
|
def qtime
|
data/test/test_response.rb
CHANGED
@@ -92,7 +92,11 @@ class ResponseTest < Test::Unit::TestCase
|
|
92
92
|
'9_widget'=>{},
|
93
93
|
'10_widget'=>{},
|
94
94
|
'11_widget'=>{},
|
95
|
-
'12_widget'=>{}}
|
95
|
+
'12_widget'=>{}},
|
96
|
+
'spellcheck'=>{
|
97
|
+
'suggestions'=>[
|
98
|
+
'fishh',{'numFound'=>1,'startOffset'=>0,'endOffset'=>4,'suggestion'=>['fish']},
|
99
|
+
'collation','fish']}}
|
96
100
|
}
|
97
101
|
|
98
102
|
def test_001
|
@@ -128,4 +132,14 @@ class ResponseTest < Test::Unit::TestCase
|
|
128
132
|
assert(!r.respond_to?(:scores))
|
129
133
|
end
|
130
134
|
|
135
|
+
def test_spellcheck
|
136
|
+
r = nil
|
137
|
+
qb = DelSolr::Client::QueryBuilder.new('standard', :query => {:index_type => 'widget'}, :facets => {:query => 'city_idm:19596', :prefix => {:key => 19596}} )
|
138
|
+
qb.request_string # need to generate this...
|
139
|
+
assert_nothing_raised { r = DelSolr::Client::Response.new(@@test_001, qb) }
|
140
|
+
|
141
|
+
assert_equal('fish', r.collation)
|
142
|
+
assert_equal('fish', r.correction['fishh'])
|
143
|
+
end
|
144
|
+
|
131
145
|
end
|
metadata
CHANGED
@@ -1,38 +1,33 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: delsolr
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.6
|
4
5
|
prerelease:
|
5
|
-
version: 0.1.5
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Ben VandenBos
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
dependencies:
|
16
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2009-11-02 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
17
15
|
name: mocha
|
18
|
-
|
19
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2171652600 !ruby/object:Gem::Requirement
|
20
17
|
none: false
|
21
|
-
requirements:
|
22
|
-
- -
|
23
|
-
- !ruby/object:Gem::Version
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
24
21
|
version: 0.9.0
|
25
22
|
type: :development
|
26
|
-
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *2171652600
|
27
25
|
description: Ruby wrapper for Lucene Solr
|
28
26
|
email:
|
29
27
|
executables: []
|
30
|
-
|
31
28
|
extensions: []
|
32
|
-
|
33
29
|
extra_rdoc_files: []
|
34
|
-
|
35
|
-
files:
|
30
|
+
files:
|
36
31
|
- License.txt
|
37
32
|
- README.txt
|
38
33
|
- lib/delsolr.rb
|
@@ -45,35 +40,32 @@ files:
|
|
45
40
|
- test/test_helper.rb
|
46
41
|
- test/test_query_builder.rb
|
47
42
|
- test/test_response.rb
|
48
|
-
has_rdoc: true
|
49
43
|
homepage: http://github.com/avvo/delsolr
|
50
44
|
licenses: []
|
51
|
-
|
52
45
|
post_install_message:
|
53
46
|
rdoc_options: []
|
54
|
-
|
55
|
-
require_paths:
|
47
|
+
require_paths:
|
56
48
|
- lib
|
57
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
49
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
58
50
|
none: false
|
59
|
-
requirements:
|
60
|
-
- -
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version:
|
63
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
64
56
|
none: false
|
65
|
-
requirements:
|
66
|
-
- -
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version:
|
57
|
+
requirements:
|
58
|
+
- - ! '>='
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
69
61
|
requirements: []
|
70
|
-
|
71
62
|
rubyforge_project:
|
72
|
-
rubygems_version: 1.5
|
63
|
+
rubygems_version: 1.8.5
|
73
64
|
signing_key:
|
74
65
|
specification_version: 3
|
75
|
-
summary: DelSolr is a light weight ruby wrapper for solr. It's intention is to expose
|
76
|
-
|
66
|
+
summary: DelSolr is a light weight ruby wrapper for solr. It's intention is to expose
|
67
|
+
the full power of solr queries while keeping the interface as ruby-esque as possible.
|
68
|
+
test_files:
|
77
69
|
- test/test_client.rb
|
78
70
|
- test/test_helper.rb
|
79
71
|
- test/test_query_builder.rb
|