cloud_search 0.1.9 → 0.2.0
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/cloud_search/search_response.rb +21 -7
- data/lib/cloud_search/searcher.rb +20 -9
- data/lib/cloud_search/version.rb +1 -1
- data/spec/cloud_search/search_response_spec.rb +14 -0
- data/spec/cloud_search/searcher_spec.rb +89 -66
- data/spec/fixtures/full.json +1 -1
- data/spec/fixtures/vcr_cassettes/search/request/facets.yml +121 -0
- data/spec/fixtures/vcr_cassettes/search/request/facets_with_constraints.yml +123 -0
- metadata +12 -3
@@ -1,9 +1,16 @@
|
|
1
1
|
module CloudSearch
|
2
2
|
class SearchResponse
|
3
3
|
attr_writer :items_per_page
|
4
|
-
attr_reader :current_page, :total_pages, :body
|
4
|
+
attr_reader :current_page, :total_pages, :body, :facets
|
5
5
|
attr_accessor :http_code
|
6
6
|
|
7
|
+
def body=(body)
|
8
|
+
@body = JSON.parse(body || "{}")
|
9
|
+
calculate_pages
|
10
|
+
build_facets
|
11
|
+
@body
|
12
|
+
end
|
13
|
+
|
7
14
|
def results
|
8
15
|
_hits["hit"] || []
|
9
16
|
end
|
@@ -16,12 +23,6 @@ module CloudSearch
|
|
16
23
|
hits > 0
|
17
24
|
end
|
18
25
|
|
19
|
-
def body=(body)
|
20
|
-
@body = JSON.parse(body || "{}")
|
21
|
-
calculate_pages
|
22
|
-
@body
|
23
|
-
end
|
24
|
-
|
25
26
|
def items_per_page
|
26
27
|
@items_per_page || 10
|
27
28
|
end
|
@@ -52,6 +53,19 @@ module CloudSearch
|
|
52
53
|
@current_page = @total_pages if @current_page > @total_pages
|
53
54
|
end
|
54
55
|
|
56
|
+
def build_facets
|
57
|
+
@facets = {}
|
58
|
+
return unless body['facets']
|
59
|
+
|
60
|
+
body['facets'].each do |facet, result|
|
61
|
+
@facets[facet] = if result['constraints']
|
62
|
+
result['constraints'].inject({}) { |hash, item| hash[item['value']] = item['count']; hash }
|
63
|
+
else
|
64
|
+
result
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
55
69
|
def _hits
|
56
70
|
body["hits"] || {}
|
57
71
|
end
|
@@ -9,6 +9,9 @@ module CloudSearch
|
|
9
9
|
def initialize
|
10
10
|
@response = SearchResponse.new
|
11
11
|
@filters = []
|
12
|
+
@facets = []
|
13
|
+
@fields = []
|
14
|
+
@facets_constraints = {}
|
12
15
|
end
|
13
16
|
|
14
17
|
def search
|
@@ -29,6 +32,16 @@ module CloudSearch
|
|
29
32
|
self
|
30
33
|
end
|
31
34
|
|
35
|
+
def with_facets(*facets)
|
36
|
+
@facets += facets
|
37
|
+
self
|
38
|
+
end
|
39
|
+
|
40
|
+
def with_facet_constraints(facets_constraints)
|
41
|
+
@facets_constraints = facets_constraints
|
42
|
+
self
|
43
|
+
end
|
44
|
+
|
32
45
|
def as_boolean_query
|
33
46
|
@boolean = true
|
34
47
|
self
|
@@ -49,7 +62,7 @@ module CloudSearch
|
|
49
62
|
end
|
50
63
|
|
51
64
|
def with_fields(*fields)
|
52
|
-
@fields
|
65
|
+
@fields += fields
|
53
66
|
self
|
54
67
|
end
|
55
68
|
|
@@ -81,9 +94,13 @@ module CloudSearch
|
|
81
94
|
|
82
95
|
"#{CloudSearch.config.search_url}/search".tap do |u|
|
83
96
|
u.concat("?#{query_parameter}=#{query}&size=#{items_per_page}&start=#{start}")
|
84
|
-
u.concat("&return-fields=#{URI.escape(@fields.join(","))}") if @fields
|
97
|
+
u.concat("&return-fields=#{URI.escape(@fields.join(","))}") if @fields.any?
|
85
98
|
u.concat("&#{filter_expression}") if @filters.any?
|
86
|
-
u.concat("
|
99
|
+
u.concat("&facet=#{@facets.join(',')}") if @facets.any?
|
100
|
+
u.concat(@facets_constraints.map do |k,v|
|
101
|
+
values = v.respond_to?(:map) ? v.map{ |i| "'#{i}'" } : ["'#{v}'"]
|
102
|
+
"&facet-#{k}-constraints=#{values.join(',')}"
|
103
|
+
end.join('&'))
|
87
104
|
u.concat("&rank=#{@rank}") if @rank
|
88
105
|
end
|
89
106
|
end
|
@@ -97,12 +114,6 @@ module CloudSearch
|
|
97
114
|
def filter_expression
|
98
115
|
@filters.join("&")
|
99
116
|
end
|
100
|
-
|
101
|
-
def weighted_fields_expression
|
102
|
-
weights_json = JSON.unparse(@weights)
|
103
|
-
expression = "cs.text_relevance(#{weights_json})"
|
104
|
-
URI.escape expression
|
105
|
-
end
|
106
117
|
end
|
107
118
|
end
|
108
119
|
|
data/lib/cloud_search/version.rb
CHANGED
@@ -83,6 +83,20 @@ describe CloudSearch::SearchResponse do
|
|
83
83
|
subject.offset.should == 0
|
84
84
|
end
|
85
85
|
end
|
86
|
+
|
87
|
+
describe "#facets" do
|
88
|
+
it "returns all facets" do
|
89
|
+
subject.facets.keys.should == ['genre', 'year']
|
90
|
+
end
|
91
|
+
|
92
|
+
it "returns facets details" do
|
93
|
+
subject.facets['genre'].should == { "Action" => 7,
|
94
|
+
"Adventure" => 7, "Sci-Fi" => 7, "Fantasy" => 5,
|
95
|
+
"Animation" => 1, "Family" => 1, "Thriller" => 1 }
|
96
|
+
|
97
|
+
subject.facets['year'].should == {"min"=>1977, "max"=>2008}
|
98
|
+
end
|
99
|
+
end
|
86
100
|
end
|
87
101
|
|
88
102
|
context "when there aren't results" do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
3
|
describe CloudSearch::Searcher do
|
4
|
-
subject { described_class.new }
|
4
|
+
subject(:searcher) { described_class.new }
|
5
5
|
|
6
6
|
let(:url_prefix) do
|
7
7
|
"#{CloudSearch.config.search_url}/search?"
|
@@ -9,171 +9,183 @@ describe CloudSearch::Searcher do
|
|
9
9
|
|
10
10
|
describe "#query" do
|
11
11
|
it "returns default query" do
|
12
|
-
|
12
|
+
searcher.query.should == ""
|
13
13
|
end
|
14
14
|
|
15
15
|
it "returns default query when it's tried to set nil value" do
|
16
|
-
|
17
|
-
|
16
|
+
searcher.with_query(nil)
|
17
|
+
searcher.query.should == ""
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
21
|
describe "#with_query" do
|
22
22
|
it "returns #{described_class} instance" do
|
23
|
-
|
23
|
+
searcher.with_query("foo").should == searcher
|
24
24
|
end
|
25
25
|
|
26
26
|
it "setup query" do
|
27
|
-
|
28
|
-
|
27
|
+
searcher.with_query("foo")
|
28
|
+
searcher.query.should == "foo"
|
29
29
|
end
|
30
30
|
|
31
31
|
it "returns cloud search url with foo query" do
|
32
|
-
|
32
|
+
searcher.with_query("foo").url.should == "#{url_prefix}q=foo&size=10&start=0"
|
33
33
|
end
|
34
34
|
|
35
35
|
it "returns cloud search url with foo query" do
|
36
|
-
|
36
|
+
searcher.with_query("f&oo").url.should == "#{url_prefix}q=f%26oo&size=10&start=0"
|
37
37
|
end
|
38
38
|
|
39
39
|
it "returns cloud search url with foo* query" do
|
40
|
-
|
40
|
+
searcher.with_query("foo*").url.should == "#{url_prefix}q=foo*&size=10&start=0"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
describe "#with_facet" do
|
45
|
+
it "setup facets" do
|
46
|
+
searcher.with_facets("foo", "bar").url.should include "facet=foo,bar"
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
describe "#with_facet_constraints" do
|
51
|
+
it "setup facets" do
|
52
|
+
searcher.with_facet_constraints(:foo => ["bar", "spam"]).url.should include "facet-foo-constraints='bar','spam'"
|
41
53
|
end
|
42
54
|
end
|
43
55
|
|
44
56
|
describe "#ranked_by" do
|
45
57
|
it "returns the instance" do
|
46
|
-
|
58
|
+
searcher.ranked_by("foobar").should == searcher
|
47
59
|
end
|
48
60
|
|
49
61
|
it "sets the rank expression in the searcher object" do
|
50
|
-
|
62
|
+
searcher.ranked_by("foobar").url.should == "#{url_prefix}q=&size=10&start=0&rank=foobar"
|
51
63
|
end
|
52
64
|
end
|
53
65
|
|
54
66
|
describe "#as_boolean_query" do
|
55
67
|
it "sets the query mode to 'boolean'" do
|
56
|
-
|
57
|
-
|
68
|
+
searcher.as_boolean_query
|
69
|
+
searcher.should be_boolean_query
|
58
70
|
end
|
59
71
|
|
60
72
|
it "returns the searcher instance" do
|
61
|
-
|
73
|
+
searcher.as_boolean_query.should == searcher
|
62
74
|
end
|
63
75
|
|
64
76
|
it "uses 'bq' to specify the query in the URL" do
|
65
|
-
|
66
|
-
|
67
|
-
|
77
|
+
searcher.as_boolean_query
|
78
|
+
searcher.with_query("year:2000")
|
79
|
+
searcher.url.should == "#{url_prefix}bq=year:2000&size=10&start=0"
|
68
80
|
end
|
69
81
|
end
|
70
82
|
|
71
83
|
describe "#with_fields" do
|
72
84
|
it "returns #{described_class} instance" do
|
73
|
-
|
85
|
+
searcher.with_fields(:foo).should == searcher
|
74
86
|
end
|
75
87
|
|
76
88
|
it "setup more thane one value" do
|
77
|
-
|
89
|
+
searcher.with_fields(:foo, :bar, :foobar)
|
78
90
|
end
|
79
91
|
|
80
92
|
it "returns cloud search url with foo and bar fields" do
|
81
|
-
|
93
|
+
searcher.with_fields(:foo, :bar).url.should == "#{url_prefix}q=&size=10&start=0&return-fields=foo,bar"
|
82
94
|
end
|
83
95
|
end
|
84
96
|
|
85
97
|
describe "#items_per_page" do
|
86
98
|
it "returns default items_per_page" do
|
87
|
-
|
99
|
+
searcher.items_per_page.should == 10
|
88
100
|
end
|
89
101
|
|
90
102
|
it "returns default items per page when it's tried to set nil value" do
|
91
|
-
|
92
|
-
|
103
|
+
searcher.with_items_per_page(nil)
|
104
|
+
searcher.items_per_page.should == 10
|
93
105
|
end
|
94
106
|
end
|
95
107
|
|
96
108
|
describe "#with_items_per_page" do
|
97
109
|
it "returns #{described_class} instance" do
|
98
|
-
|
110
|
+
searcher.with_items_per_page(nil).should == searcher
|
99
111
|
end
|
100
112
|
|
101
113
|
it "setup items per page" do
|
102
|
-
|
103
|
-
|
114
|
+
searcher.with_items_per_page(100)
|
115
|
+
searcher.items_per_page.should == 100
|
104
116
|
end
|
105
117
|
|
106
118
|
it "returns cloud search url with size equals 20" do
|
107
|
-
|
119
|
+
searcher.with_items_per_page(20).url.should == "#{url_prefix}q=&size=20&start=0"
|
108
120
|
end
|
109
121
|
end
|
110
122
|
|
111
123
|
describe "#page_number" do
|
112
124
|
it "returns default page number" do
|
113
|
-
|
125
|
+
searcher.page_number.should == 1
|
114
126
|
end
|
115
127
|
|
116
128
|
it "returns default page number when it's tried to set nil value" do
|
117
|
-
|
118
|
-
|
129
|
+
searcher.at_page(nil)
|
130
|
+
searcher.page_number.should == 1
|
119
131
|
end
|
120
132
|
end
|
121
133
|
|
122
134
|
describe "#at_page" do
|
123
135
|
it "returns #{described_class} instance" do
|
124
|
-
|
136
|
+
searcher.at_page(1).should == searcher
|
125
137
|
end
|
126
138
|
|
127
139
|
it "setup page number" do
|
128
|
-
|
129
|
-
|
140
|
+
searcher.at_page(2)
|
141
|
+
searcher.page_number.should == 2
|
130
142
|
end
|
131
143
|
|
132
144
|
it "ensure page is greater than 1" do
|
133
|
-
|
134
|
-
|
145
|
+
searcher.at_page(0)
|
146
|
+
searcher.page_number.should == 1
|
135
147
|
|
136
|
-
|
137
|
-
|
148
|
+
searcher.at_page(-1)
|
149
|
+
searcher.page_number.should == 1
|
138
150
|
end
|
139
151
|
|
140
152
|
it "returns cloud search url with start at 10" do
|
141
|
-
|
153
|
+
searcher.at_page(2).url.should == "#{url_prefix}q=&size=10&start=10"
|
142
154
|
end
|
143
155
|
end
|
144
156
|
|
145
157
|
describe "#with_filter" do
|
146
158
|
it "adds the filter to the query" do
|
147
|
-
|
148
|
-
|
159
|
+
searcher.with_query("foo").with_filter("t-product_active=1")
|
160
|
+
searcher.url.should == "#{url_prefix}q=foo&size=10&start=0&t-product_active=1"
|
149
161
|
end
|
150
162
|
|
151
163
|
it "can be used to add several filter expressions to the query" do
|
152
|
-
|
153
|
-
|
164
|
+
searcher.with_query("foo").with_filter("t-product_active=1").with_filter("t-brand_active=1")
|
165
|
+
searcher.url.should == "#{url_prefix}q=foo&size=10&start=0&t-product_active=1&t-brand_active=1"
|
154
166
|
end
|
155
167
|
end
|
156
168
|
|
157
169
|
describe "#start" do
|
158
170
|
it "returns default start index number to search" do
|
159
|
-
|
171
|
+
searcher.start.should == 0
|
160
172
|
end
|
161
173
|
|
162
174
|
it "returns start index 10 for page 2" do
|
163
|
-
|
164
|
-
|
175
|
+
searcher.at_page(2)
|
176
|
+
searcher.start.should == 10
|
165
177
|
end
|
166
178
|
end
|
167
179
|
|
168
180
|
describe "#url" do
|
169
181
|
it "returns default cloud search url" do
|
170
|
-
|
182
|
+
searcher.url.should == "#{url_prefix}q=&size=10&start=0"
|
171
183
|
end
|
172
184
|
end
|
173
185
|
|
174
186
|
describe "#search" do
|
175
187
|
before do
|
176
|
-
|
188
|
+
searcher
|
177
189
|
.with_fields(:actor, :director, :title, :year, :text_relevance)
|
178
190
|
.with_query("star wars")
|
179
191
|
end
|
@@ -188,7 +200,7 @@ describe CloudSearch::Searcher do
|
|
188
200
|
|
189
201
|
it "raises an error" do
|
190
202
|
expect {
|
191
|
-
|
203
|
+
searcher.search
|
192
204
|
}.to raise_error(CloudSearch::MissingConfigurationError, "Missing 'domain_id' configuration parameter")
|
193
205
|
end
|
194
206
|
end
|
@@ -203,7 +215,7 @@ describe CloudSearch::Searcher do
|
|
203
215
|
|
204
216
|
it "raises an error" do
|
205
217
|
expect {
|
206
|
-
|
218
|
+
searcher.search
|
207
219
|
}.to raise_error(CloudSearch::MissingConfigurationError, "Missing 'domain_name' configuration parameter")
|
208
220
|
end
|
209
221
|
end
|
@@ -212,39 +224,50 @@ describe CloudSearch::Searcher do
|
|
212
224
|
around { |example| VCR.use_cassette "search/request/full", &example }
|
213
225
|
|
214
226
|
it "returns http 200 code" do
|
215
|
-
resp =
|
227
|
+
resp = searcher.search
|
216
228
|
resp.http_code.should == 200
|
217
229
|
end
|
218
230
|
|
219
231
|
it "has found results" do
|
220
|
-
resp =
|
232
|
+
resp = searcher.search
|
221
233
|
resp.should be_found
|
222
234
|
end
|
223
235
|
|
224
236
|
it "returns number of hits" do
|
225
|
-
resp =
|
237
|
+
resp = searcher.search
|
226
238
|
expect(resp.hits).to be == 7
|
227
239
|
end
|
228
240
|
|
229
241
|
it "returns Episode II" do
|
230
|
-
resp =
|
242
|
+
resp = searcher.search
|
231
243
|
resp.results.map{ |item| item['data']['title'] }.flatten
|
232
244
|
.should include "Star Wars: Episode II - Attack of the Clones"
|
233
245
|
end
|
234
|
-
end
|
235
246
|
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
247
|
+
it "returns facets" do
|
248
|
+
VCR.use_cassette "search/request/facets" do
|
249
|
+
searcher.with_facets(:genre, :year)
|
250
|
+
resp = searcher.search
|
251
|
+
resp.facets.should == {"genre"=>{"Action"=>7, "Adventure"=>7, "Sci-Fi"=>7, "Fantasy"=>5, "Animation"=>1, "Family"=>1, "Thriller"=>1}, "year"=>{"min"=>1977, "max"=>2008}}
|
252
|
+
end
|
241
253
|
end
|
242
254
|
|
255
|
+
it "constrains facets" do
|
256
|
+
VCR.use_cassette "search/request/facets_with_constraints" do
|
257
|
+
searcher.with_facets(:genre, :year)
|
258
|
+
searcher.with_facet_constraints(:genre => "Sci-Fi")
|
259
|
+
resp = searcher.search
|
260
|
+
resp.facets.should == {"genre"=>{"Sci-Fi"=>7}, "year"=>{"min"=>1977, "max"=>2008}}
|
261
|
+
end
|
262
|
+
end
|
263
|
+
end
|
264
|
+
|
265
|
+
context "when paginate result" do
|
243
266
|
it "returns first page" do
|
244
267
|
VCR.use_cassette "search/request/paginated_first_page" do
|
245
|
-
|
246
|
-
|
247
|
-
resp =
|
268
|
+
searcher.with_items_per_page(4)
|
269
|
+
searcher.at_page(1)
|
270
|
+
resp = searcher.search
|
248
271
|
resp.results.map{ |item| item['data']['title'] }.flatten
|
249
272
|
.should include "Star Wars: Episode II - Attack of the Clones"
|
250
273
|
end
|
@@ -252,9 +275,9 @@ describe CloudSearch::Searcher do
|
|
252
275
|
|
253
276
|
it "returns second page" do
|
254
277
|
VCR.use_cassette "search/request/paginated_second_page" do
|
255
|
-
|
256
|
-
|
257
|
-
resp =
|
278
|
+
searcher.with_items_per_page(4)
|
279
|
+
searcher.at_page(2)
|
280
|
+
resp = searcher.search
|
258
281
|
resp.results.map{ |item| item['data']['title'] }.flatten
|
259
282
|
.should include "Star Wars: Episode III - Revenge of the Sith"
|
260
283
|
end
|
data/spec/fixtures/full.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"rank":"-text_relevance","match-expr":"(label 'star wars')","hits":{"found":7,"start":0,"hit":[{"id":"tt1185834","data":{"actor":["Abercrombie, Ian","Baker, Dee Bradley","Burton, Corey","Eckstein, Ashley","Futterman, Nika","Kane, Tom","Lanter, Matt","Taber, Catherine","Taylor, James Arnold","Wood, Matthew"],"director":["Filoni, Dave"],"text_relevance":["308"],"title":["Star Wars: The Clone Wars"],"year":["2008"]}},{"id":"tt0076759","data":{"actor":["Baker, Kenny","Cushing, Peter","Daniels, Anthony","De Aragon, Maria","Diamond, Peter","Fisher, Carrie","Ford, Harrison","Goffe, Rusty","Guinness, Alec","Hamill, Mark","Johnston, Joe","Jones, James Earl","Lyons, Derek","Mayhew, Peter","McCallum, Rick","Prowse, David","Rimmer, Shane","Tierney, Malcolm","Tippett, Phil","Ward, Larry"],"director":["Lucas, George"],"text_relevance":["271"],"title":["Star Wars"],"year":["1977"]}},{"id":"tt0121765","data":{"actor":["Allen, Amy","August, Pernilla","Christensen, Hayden","Csokas, Marton","Fantl, Nicole","Jackson, Samuel L.","Johnson, Fiona","Lee, Christopher","Logan, Daniel","Lucas, Amanda","Lucas, Jett","Lucas, Katie","McDiarmid, Ian","McGregor, Ewan","Morrison, Temuera","Oz, Frank","Portman, Natalie","Smits, Jimmy","Thompson, Jack","Wood, Matthew"],"director":["Lucas, George"],"text_relevance":["269"],"title":["Star Wars: Episode II - Attack of the Clones"],"year":["2002"]}},{"id":"tt0080684","data":{"actor":["Anderson, Bob","Baker, Kenny","Bonehill, Richard","Capri, Mark","Daniels, Anthony","Diamond, Peter","Fisher, Carrie","Ford, Harrison","Guinness, Alec","Hamill, Mark","Jones, James Earl","Mayhew, Peter","McQuarrie, Ralph","Morse, Ralph","Oz, Frank","Prowse, David","Santiago, Michael","Williams, Billy Dee","Williams, Treat","Wingreen, Jason"],"director":["Kershner, Irvin"],"text_relevance":["268"],"title":["Star Wars: Episode V - The Empire Strikes Back"],"year":["1980"]}},{"id":"tt0086190","data":{"actor":["Altman, John","Bonehill, Richard","Brooke, Paul","Burtt, Ben","Daniels, Anthony","Diamond, Peter","Fisher, Carrie","Ford, Harrison","Hamill, Mark","Jones, James Earl","Marquand, Richard","Mayhew, Peter","McDiarmid, Ian","McRae, Hilton","Oz, Frank","Roy, Deep","Shaw, Sebastian","Ward, Larry","Welsh, Pat","Williams, Billy Dee"],"director":["Marquand, Richard"],"text_relevance":["268"],"title":["Star Wars: Episode VI - Return of the Jedi"],"year":["1983"]}},{"id":"tt0120915","data":{"actor":["Armitage, Richard","August, Pernilla","Best, Ahmed","Burtt, Ben","Chiang, Doug","Coppola, Roman","Daniels, Anthony","Ford Davies, Oliver","Hamill, Nathan","Knoll, John","Lau, Kamay","Lloyd, Jake","McCallum, Rick","McDiarmid, Ian","McGregor, Ewan","Menezes, Joo Costa","Neeson, Liam","Portman, Natalie","Quarshie, Hugh","Wood, Matthew"],"director":["Lucas, George"],"text_relevance":["268"],"title":["Star Wars: Episode I - The Phantom Menace"],"year":["1999"]}},{"id":"tt0121766","data":{"actor":["Bai, Ling","Bryant, Gene","Castle-Hughes, Keisha","Christensen, Hayden","Cooke, Ben","Daniels, Anthony","Jackson, Samuel L.","Jones, James Earl","Knoll, John","Lee, Christopher","Lucas, George","McDiarmid, Ian","McGregor, Ewan","Oz, Frank","Portman, Natalie","Smits, Jimmy","Spence, Paul","Steen, Suzie","Yamaguchi, Masa","de Souza Correa, Caroline"],"director":["Lucas, George"],"text_relevance":["266"],"title":["Star Wars: Episode III - Revenge of the Sith"],"year":["2005"]}}]},"info":{"rid":"d1b8bf24ec64151ed54a357e94f64bd8b1dadc1d67f6f2dcbc042ac86407c68b91582fba82640f4d","time-ms":3,"cpu-time-ms":4}}
|
1
|
+
{"rank":"-text_relevance","match-expr":"(label 'star wars')","hits":{"found":7,"start":0,"hit":[{"id":"tt1185834","data":{"actor":["Abercrombie, Ian","Baker, Dee Bradley","Burton, Corey","Eckstein, Ashley","Futterman, Nika","Kane, Tom","Lanter, Matt","Taber, Catherine","Taylor, James Arnold","Wood, Matthew"],"director":["Filoni, Dave"],"text_relevance":["308"],"title":["Star Wars: The Clone Wars"],"year":["2008"]}},{"id":"tt0076759","data":{"actor":["Baker, Kenny","Cushing, Peter","Daniels, Anthony","De Aragon, Maria","Diamond, Peter","Fisher, Carrie","Ford, Harrison","Goffe, Rusty","Guinness, Alec","Hamill, Mark","Johnston, Joe","Jones, James Earl","Lyons, Derek","Mayhew, Peter","McCallum, Rick","Prowse, David","Rimmer, Shane","Tierney, Malcolm","Tippett, Phil","Ward, Larry"],"director":["Lucas, George"],"text_relevance":["271"],"title":["Star Wars"],"year":["1977"]}},{"id":"tt0121765","data":{"actor":["Allen, Amy","August, Pernilla","Christensen, Hayden","Csokas, Marton","Fantl, Nicole","Jackson, Samuel L.","Johnson, Fiona","Lee, Christopher","Logan, Daniel","Lucas, Amanda","Lucas, Jett","Lucas, Katie","McDiarmid, Ian","McGregor, Ewan","Morrison, Temuera","Oz, Frank","Portman, Natalie","Smits, Jimmy","Thompson, Jack","Wood, Matthew"],"director":["Lucas, George"],"text_relevance":["269"],"title":["Star Wars: Episode II - Attack of the Clones"],"year":["2002"]}},{"id":"tt0080684","data":{"actor":["Anderson, Bob","Baker, Kenny","Bonehill, Richard","Capri, Mark","Daniels, Anthony","Diamond, Peter","Fisher, Carrie","Ford, Harrison","Guinness, Alec","Hamill, Mark","Jones, James Earl","Mayhew, Peter","McQuarrie, Ralph","Morse, Ralph","Oz, Frank","Prowse, David","Santiago, Michael","Williams, Billy Dee","Williams, Treat","Wingreen, Jason"],"director":["Kershner, Irvin"],"text_relevance":["268"],"title":["Star Wars: Episode V - The Empire Strikes Back"],"year":["1980"]}},{"id":"tt0086190","data":{"actor":["Altman, John","Bonehill, Richard","Brooke, Paul","Burtt, Ben","Daniels, Anthony","Diamond, Peter","Fisher, Carrie","Ford, Harrison","Hamill, Mark","Jones, James Earl","Marquand, Richard","Mayhew, Peter","McDiarmid, Ian","McRae, Hilton","Oz, Frank","Roy, Deep","Shaw, Sebastian","Ward, Larry","Welsh, Pat","Williams, Billy Dee"],"director":["Marquand, Richard"],"text_relevance":["268"],"title":["Star Wars: Episode VI - Return of the Jedi"],"year":["1983"]}},{"id":"tt0120915","data":{"actor":["Armitage, Richard","August, Pernilla","Best, Ahmed","Burtt, Ben","Chiang, Doug","Coppola, Roman","Daniels, Anthony","Ford Davies, Oliver","Hamill, Nathan","Knoll, John","Lau, Kamay","Lloyd, Jake","McCallum, Rick","McDiarmid, Ian","McGregor, Ewan","Menezes, Joo Costa","Neeson, Liam","Portman, Natalie","Quarshie, Hugh","Wood, Matthew"],"director":["Lucas, George"],"text_relevance":["268"],"title":["Star Wars: Episode I - The Phantom Menace"],"year":["1999"]}},{"id":"tt0121766","data":{"actor":["Bai, Ling","Bryant, Gene","Castle-Hughes, Keisha","Christensen, Hayden","Cooke, Ben","Daniels, Anthony","Jackson, Samuel L.","Jones, James Earl","Knoll, John","Lee, Christopher","Lucas, George","McDiarmid, Ian","McGregor, Ewan","Oz, Frank","Portman, Natalie","Smits, Jimmy","Spence, Paul","Steen, Suzie","Yamaguchi, Masa","de Souza Correa, Caroline"],"director":["Lucas, George"],"text_relevance":["266"],"title":["Star Wars: Episode III - Revenge of the Sith"],"year":["2005"]}}]},"info":{"rid":"d1b8bf24ec64151ed54a357e94f64bd8b1dadc1d67f6f2dcbc042ac86407c68b91582fba82640f4d","time-ms":3,"cpu-time-ms":4},"facets":{"genre":{"constraints":[{"value":"Action", "count":7}, {"value":"Adventure", "count":7}, {"value":"Sci-Fi", "count":7}, {"value":"Fantasy", "count":5}, {"value":"Animation", "count":1}, {"value":"Family", "count":1}, {"value":"Thriller", "count":1}]}, "year":{"min":1977, "max":2008}}}
|
@@ -0,0 +1,121 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://search-imdb-movies-pl6u4t3elu7dhsbwaqbsy3y6be.us-east-1.cloudsearch.amazonaws.com/2011-02-01/search?facet=genre,year&q=star%20wars&return-fields=actor,director,title,year,text_relevance&size=10&start=0
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*; q=0.5, application/xml'
|
12
|
+
Accept-Encoding:
|
13
|
+
- gzip, deflate
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: OK
|
20
|
+
headers:
|
21
|
+
Content-Type:
|
22
|
+
- application/json
|
23
|
+
Date:
|
24
|
+
- Thu, 02 May 2013 19:48:54 GMT
|
25
|
+
Server:
|
26
|
+
- Server
|
27
|
+
Content-Length:
|
28
|
+
- '3816'
|
29
|
+
Connection:
|
30
|
+
- keep-alive
|
31
|
+
body:
|
32
|
+
encoding: ASCII-8BIT
|
33
|
+
string: !binary |-
|
34
|
+
eyJyYW5rIjoiLXRleHRfcmVsZXZhbmNlIiwibWF0Y2gtZXhwciI6IihsYWJl
|
35
|
+
bCAnc3RhciB3YXJzJykiLCJoaXRzIjp7ImZvdW5kIjo3LCJzdGFydCI6MCwi
|
36
|
+
aGl0IjpbeyJpZCI6InR0MTE4NTgzNCIsImRhdGEiOnsiYWN0b3IiOlsiQWJl
|
37
|
+
cmNyb21iaWUsIElhbiIsIkJha2VyLCBEZWUgQnJhZGxleSIsIkJ1cnRvbiwg
|
38
|
+
Q29yZXkiLCJFY2tzdGVpbiwgQXNobGV5IiwiRnV0dGVybWFuLCBOaWthIiwi
|
39
|
+
S2FuZSwgVG9tIiwiTGFudGVyLCBNYXR0IiwiVGFiZXIsIENhdGhlcmluZSIs
|
40
|
+
IlRheWxvciwgSmFtZXMgQXJub2xkIiwiV29vZCwgTWF0dGhldyJdLCJkaXJl
|
41
|
+
Y3RvciI6WyJGaWxvbmksIERhdmUiXSwidGV4dF9yZWxldmFuY2UiOlsiMzA3
|
42
|
+
Il0sInRpdGxlIjpbIlN0YXIgV2FyczogVGhlIENsb25lIFdhcnMiXSwieWVh
|
43
|
+
ciI6WyIyMDA4Il19fSx7ImlkIjoidHQwMDc2NzU5IiwiZGF0YSI6eyJhY3Rv
|
44
|
+
ciI6WyJCYWtlciwgS2VubnkiLCJDdXNoaW5nLCBQZXRlciIsIkRhbmllbHMs
|
45
|
+
IEFudGhvbnkiLCJEZSBBcmFnb24sIE1hcmlhIiwiRGlhbW9uZCwgUGV0ZXIi
|
46
|
+
LCJGaXNoZXIsIENhcnJpZSIsIkZvcmQsIEhhcnJpc29uIiwiR29mZmUsIFJ1
|
47
|
+
c3R5IiwiR3Vpbm5lc3MsIEFsZWMiLCJIYW1pbGwsIE1hcmsiLCJKb2huc3Rv
|
48
|
+
biwgSm9lIiwiSm9uZXMsIEphbWVzIEVhcmwiLCJMeW9ucywgRGVyZWsiLCJN
|
49
|
+
YXloZXcsIFBldGVyIiwiTWNDYWxsdW0sIFJpY2siLCJQcm93c2UsIERhdmlk
|
50
|
+
IiwiUmltbWVyLCBTaGFuZSIsIlRpZXJuZXksIE1hbGNvbG0iLCJUaXBwZXR0
|
51
|
+
LCBQaGlsIiwiV2FyZCwgTGFycnkiXSwiZGlyZWN0b3IiOlsiTHVjYXMsIEdl
|
52
|
+
b3JnZSJdLCJ0ZXh0X3JlbGV2YW5jZSI6WyIyNzAiXSwidGl0bGUiOlsiU3Rh
|
53
|
+
ciBXYXJzIl0sInllYXIiOlsiMTk3NyJdfX0seyJpZCI6InR0MDEyMTc2NSIs
|
54
|
+
ImRhdGEiOnsiYWN0b3IiOlsiQWxsZW4sIEFteSIsIkF1Z3VzdCwgUGVybmls
|
55
|
+
bGEiLCJDaHJpc3RlbnNlbiwgSGF5ZGVuIiwiQ3Nva2FzLCBNYXJ0b24iLCJG
|
56
|
+
YW50bCwgTmljb2xlIiwiSmFja3NvbiwgU2FtdWVsIEwuIiwiSm9obnNvbiwg
|
57
|
+
RmlvbmEiLCJMZWUsIENocmlzdG9waGVyIiwiTG9nYW4sIERhbmllbCIsIkx1
|
58
|
+
Y2FzLCBBbWFuZGEiLCJMdWNhcywgSmV0dCIsIkx1Y2FzLCBLYXRpZSIsIk1j
|
59
|
+
RGlhcm1pZCwgSWFuIiwiTWNHcmVnb3IsIEV3YW4iLCJNb3JyaXNvbiwgVGVt
|
60
|
+
dWVyYSIsIk96LCBGcmFuayIsIlBvcnRtYW4sIE5hdGFsaWUiLCJTbWl0cywg
|
61
|
+
SmltbXkiLCJUaG9tcHNvbiwgSmFjayIsIldvb2QsIE1hdHRoZXciXSwiZGly
|
62
|
+
ZWN0b3IiOlsiTHVjYXMsIEdlb3JnZSJdLCJ0ZXh0X3JlbGV2YW5jZSI6WyIy
|
63
|
+
NjkiXSwidGl0bGUiOlsiU3RhciBXYXJzOiBFcGlzb2RlIElJIC0gQXR0YWNr
|
64
|
+
IG9mIHRoZSBDbG9uZXMiXSwieWVhciI6WyIyMDAyIl19fSx7ImlkIjoidHQw
|
65
|
+
MDgwNjg0IiwiZGF0YSI6eyJhY3RvciI6WyJBbmRlcnNvbiwgQm9iIiwiQmFr
|
66
|
+
ZXIsIEtlbm55IiwiQm9uZWhpbGwsIFJpY2hhcmQiLCJDYXByaSwgTWFyayIs
|
67
|
+
IkRhbmllbHMsIEFudGhvbnkiLCJEaWFtb25kLCBQZXRlciIsIkZpc2hlciwg
|
68
|
+
Q2FycmllIiwiRm9yZCwgSGFycmlzb24iLCJHdWlubmVzcywgQWxlYyIsIkhh
|
69
|
+
bWlsbCwgTWFyayIsIkpvbmVzLCBKYW1lcyBFYXJsIiwiTWF5aGV3LCBQZXRl
|
70
|
+
ciIsIk1jUXVhcnJpZSwgUmFscGgiLCJNb3JzZSwgUmFscGgiLCJPeiwgRnJh
|
71
|
+
bmsiLCJQcm93c2UsIERhdmlkIiwiU2FudGlhZ28sIE1pY2hhZWwiLCJXaWxs
|
72
|
+
aWFtcywgQmlsbHkgRGVlIiwiV2lsbGlhbXMsIFRyZWF0IiwiV2luZ3JlZW4s
|
73
|
+
IEphc29uIl0sImRpcmVjdG9yIjpbIktlcnNobmVyLCBJcnZpbiJdLCJ0ZXh0
|
74
|
+
X3JlbGV2YW5jZSI6WyIyNjgiXSwidGl0bGUiOlsiU3RhciBXYXJzOiBFcGlz
|
75
|
+
b2RlIFYgLSBUaGUgRW1waXJlIFN0cmlrZXMgQmFjayJdLCJ5ZWFyIjpbIjE5
|
76
|
+
ODAiXX19LHsiaWQiOiJ0dDAxMjA5MTUiLCJkYXRhIjp7ImFjdG9yIjpbIkFy
|
77
|
+
bWl0YWdlLCBSaWNoYXJkIiwiQXVndXN0LCBQZXJuaWxsYSIsIkJlc3QsIEFo
|
78
|
+
bWVkIiwiQnVydHQsIEJlbiIsIkNoaWFuZywgRG91ZyIsIkNvcHBvbGEsIFJv
|
79
|
+
bWFuIiwiRGFuaWVscywgQW50aG9ueSIsIkZvcmQgRGF2aWVzLCBPbGl2ZXIi
|
80
|
+
LCJIYW1pbGwsIE5hdGhhbiIsIktub2xsLCBKb2huIiwiTGF1LCBLYW1heSIs
|
81
|
+
Ikxsb3lkLCBKYWtlIiwiTWNDYWxsdW0sIFJpY2siLCJNY0RpYXJtaWQsIElh
|
82
|
+
biIsIk1jR3JlZ29yLCBFd2FuIiwiTWVuZXplcywgSm/Do28gQ29zdGEiLCJO
|
83
|
+
ZWVzb24sIExpYW0iLCJQb3J0bWFuLCBOYXRhbGllIiwiUXVhcnNoaWUsIEh1
|
84
|
+
Z2giLCJXb29kLCBNYXR0aGV3Il0sImRpcmVjdG9yIjpbIkx1Y2FzLCBHZW9y
|
85
|
+
Z2UiXSwidGV4dF9yZWxldmFuY2UiOlsiMjY4Il0sInRpdGxlIjpbIlN0YXIg
|
86
|
+
V2FyczogRXBpc29kZSBJIC0gVGhlIFBoYW50b20gTWVuYWNlIl0sInllYXIi
|
87
|
+
OlsiMTk5OSJdfX0seyJpZCI6InR0MDA4NjE5MCIsImRhdGEiOnsiYWN0b3Ii
|
88
|
+
OlsiQWx0bWFuLCBKb2huIiwiQm9uZWhpbGwsIFJpY2hhcmQiLCJCcm9va2Us
|
89
|
+
IFBhdWwiLCJCdXJ0dCwgQmVuIiwiRGFuaWVscywgQW50aG9ueSIsIkRpYW1v
|
90
|
+
bmQsIFBldGVyIiwiRmlzaGVyLCBDYXJyaWUiLCJGb3JkLCBIYXJyaXNvbiIs
|
91
|
+
IkhhbWlsbCwgTWFyayIsIkpvbmVzLCBKYW1lcyBFYXJsIiwiTWFycXVhbmQs
|
92
|
+
IFJpY2hhcmQiLCJNYXloZXcsIFBldGVyIiwiTWNEaWFybWlkLCBJYW4iLCJN
|
93
|
+
Y1JhZSwgSGlsdG9uIiwiT3osIEZyYW5rIiwiUm95LCBEZWVwIiwiU2hhdywg
|
94
|
+
U2ViYXN0aWFuIiwiV2FyZCwgTGFycnkiLCJXZWxzaCwgUGF0IiwiV2lsbGlh
|
95
|
+
bXMsIEJpbGx5IERlZSJdLCJkaXJlY3RvciI6WyJNYXJxdWFuZCwgUmljaGFy
|
96
|
+
ZCJdLCJ0ZXh0X3JlbGV2YW5jZSI6WyIyNjgiXSwidGl0bGUiOlsiU3RhciBX
|
97
|
+
YXJzOiBFcGlzb2RlIFZJIC0gUmV0dXJuIG9mIHRoZSBKZWRpIl0sInllYXIi
|
98
|
+
OlsiMTk4MyJdfX0seyJpZCI6InR0MDEyMTc2NiIsImRhdGEiOnsiYWN0b3Ii
|
99
|
+
OlsiQmFpLCBMaW5nIiwiQnJ5YW50LCBHZW5lIiwiQ2FzdGxlLUh1Z2hlcywg
|
100
|
+
S2Vpc2hhIiwiQ2hyaXN0ZW5zZW4sIEhheWRlbiIsIkNvb2tlLCBCZW4iLCJE
|
101
|
+
YW5pZWxzLCBBbnRob255IiwiSmFja3NvbiwgU2FtdWVsIEwuIiwiSm9uZXMs
|
102
|
+
IEphbWVzIEVhcmwiLCJLbm9sbCwgSm9obiIsIkxlZSwgQ2hyaXN0b3BoZXIi
|
103
|
+
LCJMdWNhcywgR2VvcmdlIiwiTWNEaWFybWlkLCBJYW4iLCJNY0dyZWdvciwg
|
104
|
+
RXdhbiIsIk96LCBGcmFuayIsIlBvcnRtYW4sIE5hdGFsaWUiLCJTbWl0cywg
|
105
|
+
SmltbXkiLCJTcGVuY2UsIFBhdWwiLCJTdGVlbiwgU3V6aWUiLCJZYW1hZ3Vj
|
106
|
+
aGksIE1hc2EiLCJkZSBTb3V6YSBDb3JyZWEsIENhcm9saW5lIl0sImRpcmVj
|
107
|
+
dG9yIjpbIkx1Y2FzLCBHZW9yZ2UiXSwidGV4dF9yZWxldmFuY2UiOlsiMjY2
|
108
|
+
Il0sInRpdGxlIjpbIlN0YXIgV2FyczogRXBpc29kZSBJSUkgLSBSZXZlbmdl
|
109
|
+
IG9mIHRoZSBTaXRoIl0sInllYXIiOlsiMjAwNSJdfX1dfSwiZmFjZXRzIjp7
|
110
|
+
ImdlbnJlIjp7ImNvbnN0cmFpbnRzIjpbeyJ2YWx1ZSI6IkFjdGlvbiIsImNv
|
111
|
+
dW50Ijo3fSx7InZhbHVlIjoiQWR2ZW50dXJlIiwiY291bnQiOjd9LHsidmFs
|
112
|
+
dWUiOiJTY2ktRmkiLCJjb3VudCI6N30seyJ2YWx1ZSI6IkZhbnRhc3kiLCJj
|
113
|
+
b3VudCI6NX0seyJ2YWx1ZSI6IkFuaW1hdGlvbiIsImNvdW50IjoxfSx7InZh
|
114
|
+
bHVlIjoiRmFtaWx5IiwiY291bnQiOjF9LHsidmFsdWUiOiJUaHJpbGxlciIs
|
115
|
+
ImNvdW50IjoxfV19LCJ5ZWFyIjp7Im1pbiI6MTk3NywibWF4IjoyMDA4fX0s
|
116
|
+
ImluZm8iOnsicmlkIjoiOGEwNjIwZjZjNzJmZjNlNzYzMDZjZGU0NTNkZTFk
|
117
|
+
ZWI5YTlhZmNkMWFkMmM2ZWRmNGIwYzAwYzY2ZDliNjE2ZmU2OGJmNmNmZjM2
|
118
|
+
ZDcxZTgiLCJ0aW1lLW1zIjo0LCJjcHUtdGltZS1tcyI6MH19
|
119
|
+
http_version:
|
120
|
+
recorded_at: Thu, 02 May 2013 19:48:54 GMT
|
121
|
+
recorded_with: VCR 2.4.0
|
@@ -0,0 +1,123 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://search-imdb-movies-pl6u4t3elu7dhsbwaqbsy3y6be.us-east-1.cloudsearch.amazonaws.com/2011-02-01/search?facet=genre,year&facet-genre-constraints='Sci-Fi'&q=star%20wars&return-fields=actor,director,title,year,text_relevance&size=10&start=0
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*; q=0.5, application/xml'
|
12
|
+
Accept-Encoding:
|
13
|
+
- gzip, deflate
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: !binary |-
|
20
|
+
T0s=
|
21
|
+
headers:
|
22
|
+
!binary "Q29udGVudC1UeXBl":
|
23
|
+
- !binary |-
|
24
|
+
YXBwbGljYXRpb24vanNvbg==
|
25
|
+
!binary "RGF0ZQ==":
|
26
|
+
- !binary |-
|
27
|
+
VGh1LCAwMiBNYXkgMjAxMyAyMTowNDoxMiBHTVQ=
|
28
|
+
!binary "U2VydmVy":
|
29
|
+
- !binary |-
|
30
|
+
U2VydmVy
|
31
|
+
!binary "Q29udGVudC1MZW5ndGg=":
|
32
|
+
- !binary |-
|
33
|
+
MzYzMw==
|
34
|
+
!binary "Q29ubmVjdGlvbg==":
|
35
|
+
- !binary |-
|
36
|
+
a2VlcC1hbGl2ZQ==
|
37
|
+
body:
|
38
|
+
encoding: ASCII-8BIT
|
39
|
+
string: !binary |-
|
40
|
+
eyJyYW5rIjoiLXRleHRfcmVsZXZhbmNlIiwibWF0Y2gtZXhwciI6IihsYWJl
|
41
|
+
bCAnc3RhciB3YXJzJykiLCJoaXRzIjp7ImZvdW5kIjo3LCJzdGFydCI6MCwi
|
42
|
+
aGl0IjpbeyJpZCI6InR0MTE4NTgzNCIsImRhdGEiOnsiYWN0b3IiOlsiQWJl
|
43
|
+
cmNyb21iaWUsIElhbiIsIkJha2VyLCBEZWUgQnJhZGxleSIsIkJ1cnRvbiwg
|
44
|
+
Q29yZXkiLCJFY2tzdGVpbiwgQXNobGV5IiwiRnV0dGVybWFuLCBOaWthIiwi
|
45
|
+
S2FuZSwgVG9tIiwiTGFudGVyLCBNYXR0IiwiVGFiZXIsIENhdGhlcmluZSIs
|
46
|
+
IlRheWxvciwgSmFtZXMgQXJub2xkIiwiV29vZCwgTWF0dGhldyJdLCJkaXJl
|
47
|
+
Y3RvciI6WyJGaWxvbmksIERhdmUiXSwidGV4dF9yZWxldmFuY2UiOlsiMzA3
|
48
|
+
Il0sInRpdGxlIjpbIlN0YXIgV2FyczogVGhlIENsb25lIFdhcnMiXSwieWVh
|
49
|
+
ciI6WyIyMDA4Il19fSx7ImlkIjoidHQwMDc2NzU5IiwiZGF0YSI6eyJhY3Rv
|
50
|
+
ciI6WyJCYWtlciwgS2VubnkiLCJDdXNoaW5nLCBQZXRlciIsIkRhbmllbHMs
|
51
|
+
IEFudGhvbnkiLCJEZSBBcmFnb24sIE1hcmlhIiwiRGlhbW9uZCwgUGV0ZXIi
|
52
|
+
LCJGaXNoZXIsIENhcnJpZSIsIkZvcmQsIEhhcnJpc29uIiwiR29mZmUsIFJ1
|
53
|
+
c3R5IiwiR3Vpbm5lc3MsIEFsZWMiLCJIYW1pbGwsIE1hcmsiLCJKb2huc3Rv
|
54
|
+
biwgSm9lIiwiSm9uZXMsIEphbWVzIEVhcmwiLCJMeW9ucywgRGVyZWsiLCJN
|
55
|
+
YXloZXcsIFBldGVyIiwiTWNDYWxsdW0sIFJpY2siLCJQcm93c2UsIERhdmlk
|
56
|
+
IiwiUmltbWVyLCBTaGFuZSIsIlRpZXJuZXksIE1hbGNvbG0iLCJUaXBwZXR0
|
57
|
+
LCBQaGlsIiwiV2FyZCwgTGFycnkiXSwiZGlyZWN0b3IiOlsiTHVjYXMsIEdl
|
58
|
+
b3JnZSJdLCJ0ZXh0X3JlbGV2YW5jZSI6WyIyNzAiXSwidGl0bGUiOlsiU3Rh
|
59
|
+
ciBXYXJzIl0sInllYXIiOlsiMTk3NyJdfX0seyJpZCI6InR0MDEyMTc2NSIs
|
60
|
+
ImRhdGEiOnsiYWN0b3IiOlsiQWxsZW4sIEFteSIsIkF1Z3VzdCwgUGVybmls
|
61
|
+
bGEiLCJDaHJpc3RlbnNlbiwgSGF5ZGVuIiwiQ3Nva2FzLCBNYXJ0b24iLCJG
|
62
|
+
YW50bCwgTmljb2xlIiwiSmFja3NvbiwgU2FtdWVsIEwuIiwiSm9obnNvbiwg
|
63
|
+
RmlvbmEiLCJMZWUsIENocmlzdG9waGVyIiwiTG9nYW4sIERhbmllbCIsIkx1
|
64
|
+
Y2FzLCBBbWFuZGEiLCJMdWNhcywgSmV0dCIsIkx1Y2FzLCBLYXRpZSIsIk1j
|
65
|
+
RGlhcm1pZCwgSWFuIiwiTWNHcmVnb3IsIEV3YW4iLCJNb3JyaXNvbiwgVGVt
|
66
|
+
dWVyYSIsIk96LCBGcmFuayIsIlBvcnRtYW4sIE5hdGFsaWUiLCJTbWl0cywg
|
67
|
+
SmltbXkiLCJUaG9tcHNvbiwgSmFjayIsIldvb2QsIE1hdHRoZXciXSwiZGly
|
68
|
+
ZWN0b3IiOlsiTHVjYXMsIEdlb3JnZSJdLCJ0ZXh0X3JlbGV2YW5jZSI6WyIy
|
69
|
+
NjkiXSwidGl0bGUiOlsiU3RhciBXYXJzOiBFcGlzb2RlIElJIC0gQXR0YWNr
|
70
|
+
IG9mIHRoZSBDbG9uZXMiXSwieWVhciI6WyIyMDAyIl19fSx7ImlkIjoidHQw
|
71
|
+
MDgwNjg0IiwiZGF0YSI6eyJhY3RvciI6WyJBbmRlcnNvbiwgQm9iIiwiQmFr
|
72
|
+
ZXIsIEtlbm55IiwiQm9uZWhpbGwsIFJpY2hhcmQiLCJDYXByaSwgTWFyayIs
|
73
|
+
IkRhbmllbHMsIEFudGhvbnkiLCJEaWFtb25kLCBQZXRlciIsIkZpc2hlciwg
|
74
|
+
Q2FycmllIiwiRm9yZCwgSGFycmlzb24iLCJHdWlubmVzcywgQWxlYyIsIkhh
|
75
|
+
bWlsbCwgTWFyayIsIkpvbmVzLCBKYW1lcyBFYXJsIiwiTWF5aGV3LCBQZXRl
|
76
|
+
ciIsIk1jUXVhcnJpZSwgUmFscGgiLCJNb3JzZSwgUmFscGgiLCJPeiwgRnJh
|
77
|
+
bmsiLCJQcm93c2UsIERhdmlkIiwiU2FudGlhZ28sIE1pY2hhZWwiLCJXaWxs
|
78
|
+
aWFtcywgQmlsbHkgRGVlIiwiV2lsbGlhbXMsIFRyZWF0IiwiV2luZ3JlZW4s
|
79
|
+
IEphc29uIl0sImRpcmVjdG9yIjpbIktlcnNobmVyLCBJcnZpbiJdLCJ0ZXh0
|
80
|
+
X3JlbGV2YW5jZSI6WyIyNjgiXSwidGl0bGUiOlsiU3RhciBXYXJzOiBFcGlz
|
81
|
+
b2RlIFYgLSBUaGUgRW1waXJlIFN0cmlrZXMgQmFjayJdLCJ5ZWFyIjpbIjE5
|
82
|
+
ODAiXX19LHsiaWQiOiJ0dDAxMjA5MTUiLCJkYXRhIjp7ImFjdG9yIjpbIkFy
|
83
|
+
bWl0YWdlLCBSaWNoYXJkIiwiQXVndXN0LCBQZXJuaWxsYSIsIkJlc3QsIEFo
|
84
|
+
bWVkIiwiQnVydHQsIEJlbiIsIkNoaWFuZywgRG91ZyIsIkNvcHBvbGEsIFJv
|
85
|
+
bWFuIiwiRGFuaWVscywgQW50aG9ueSIsIkZvcmQgRGF2aWVzLCBPbGl2ZXIi
|
86
|
+
LCJIYW1pbGwsIE5hdGhhbiIsIktub2xsLCBKb2huIiwiTGF1LCBLYW1heSIs
|
87
|
+
Ikxsb3lkLCBKYWtlIiwiTWNDYWxsdW0sIFJpY2siLCJNY0RpYXJtaWQsIElh
|
88
|
+
biIsIk1jR3JlZ29yLCBFd2FuIiwiTWVuZXplcywgSm/Do28gQ29zdGEiLCJO
|
89
|
+
ZWVzb24sIExpYW0iLCJQb3J0bWFuLCBOYXRhbGllIiwiUXVhcnNoaWUsIEh1
|
90
|
+
Z2giLCJXb29kLCBNYXR0aGV3Il0sImRpcmVjdG9yIjpbIkx1Y2FzLCBHZW9y
|
91
|
+
Z2UiXSwidGV4dF9yZWxldmFuY2UiOlsiMjY4Il0sInRpdGxlIjpbIlN0YXIg
|
92
|
+
V2FyczogRXBpc29kZSBJIC0gVGhlIFBoYW50b20gTWVuYWNlIl0sInllYXIi
|
93
|
+
OlsiMTk5OSJdfX0seyJpZCI6InR0MDA4NjE5MCIsImRhdGEiOnsiYWN0b3Ii
|
94
|
+
OlsiQWx0bWFuLCBKb2huIiwiQm9uZWhpbGwsIFJpY2hhcmQiLCJCcm9va2Us
|
95
|
+
IFBhdWwiLCJCdXJ0dCwgQmVuIiwiRGFuaWVscywgQW50aG9ueSIsIkRpYW1v
|
96
|
+
bmQsIFBldGVyIiwiRmlzaGVyLCBDYXJyaWUiLCJGb3JkLCBIYXJyaXNvbiIs
|
97
|
+
IkhhbWlsbCwgTWFyayIsIkpvbmVzLCBKYW1lcyBFYXJsIiwiTWFycXVhbmQs
|
98
|
+
IFJpY2hhcmQiLCJNYXloZXcsIFBldGVyIiwiTWNEaWFybWlkLCBJYW4iLCJN
|
99
|
+
Y1JhZSwgSGlsdG9uIiwiT3osIEZyYW5rIiwiUm95LCBEZWVwIiwiU2hhdywg
|
100
|
+
U2ViYXN0aWFuIiwiV2FyZCwgTGFycnkiLCJXZWxzaCwgUGF0IiwiV2lsbGlh
|
101
|
+
bXMsIEJpbGx5IERlZSJdLCJkaXJlY3RvciI6WyJNYXJxdWFuZCwgUmljaGFy
|
102
|
+
ZCJdLCJ0ZXh0X3JlbGV2YW5jZSI6WyIyNjgiXSwidGl0bGUiOlsiU3RhciBX
|
103
|
+
YXJzOiBFcGlzb2RlIFZJIC0gUmV0dXJuIG9mIHRoZSBKZWRpIl0sInllYXIi
|
104
|
+
OlsiMTk4MyJdfX0seyJpZCI6InR0MDEyMTc2NiIsImRhdGEiOnsiYWN0b3Ii
|
105
|
+
OlsiQmFpLCBMaW5nIiwiQnJ5YW50LCBHZW5lIiwiQ2FzdGxlLUh1Z2hlcywg
|
106
|
+
S2Vpc2hhIiwiQ2hyaXN0ZW5zZW4sIEhheWRlbiIsIkNvb2tlLCBCZW4iLCJE
|
107
|
+
YW5pZWxzLCBBbnRob255IiwiSmFja3NvbiwgU2FtdWVsIEwuIiwiSm9uZXMs
|
108
|
+
IEphbWVzIEVhcmwiLCJLbm9sbCwgSm9obiIsIkxlZSwgQ2hyaXN0b3BoZXIi
|
109
|
+
LCJMdWNhcywgR2VvcmdlIiwiTWNEaWFybWlkLCBJYW4iLCJNY0dyZWdvciwg
|
110
|
+
RXdhbiIsIk96LCBGcmFuayIsIlBvcnRtYW4sIE5hdGFsaWUiLCJTbWl0cywg
|
111
|
+
SmltbXkiLCJTcGVuY2UsIFBhdWwiLCJTdGVlbiwgU3V6aWUiLCJZYW1hZ3Vj
|
112
|
+
aGksIE1hc2EiLCJkZSBTb3V6YSBDb3JyZWEsIENhcm9saW5lIl0sImRpcmVj
|
113
|
+
dG9yIjpbIkx1Y2FzLCBHZW9yZ2UiXSwidGV4dF9yZWxldmFuY2UiOlsiMjY2
|
114
|
+
Il0sInRpdGxlIjpbIlN0YXIgV2FyczogRXBpc29kZSBJSUkgLSBSZXZlbmdl
|
115
|
+
IG9mIHRoZSBTaXRoIl0sInllYXIiOlsiMjAwNSJdfX1dfSwiZmFjZXRzIjp7
|
116
|
+
ImdlbnJlIjp7ImNvbnN0cmFpbnRzIjpbeyJ2YWx1ZSI6IlNjaS1GaSIsImNv
|
117
|
+
dW50Ijo3fV19LCJ5ZWFyIjp7Im1pbiI6MTk3NywibWF4IjoyMDA4fX0sImlu
|
118
|
+
Zm8iOnsicmlkIjoiOGEwNjIwZjZjNzJmZjNlNzYzMDZjZGU0NTNkZTFkZWJl
|
119
|
+
ZmU5YzBmZDQ0Y2Y4MmU5ODM3NzJlZDUxMGVkYzY3Zjg1ZGU0YjYwNDg4NjI0
|
120
|
+
YTIiLCJ0aW1lLW1zIjozLCJjcHUtdGltZS1tcyI6MH19
|
121
|
+
http_version:
|
122
|
+
recorded_at: Thu, 02 May 2013 21:04:15 GMT
|
123
|
+
recorded_with: VCR 2.4.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cloud_search
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-05-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: pry
|
@@ -157,6 +157,8 @@ files:
|
|
157
157
|
- spec/fixtures/vcr_cassettes/index/request/add.yml
|
158
158
|
- spec/fixtures/vcr_cassettes/index/request/add_in_batch.yml
|
159
159
|
- spec/fixtures/vcr_cassettes/index/request/delete.yml
|
160
|
+
- spec/fixtures/vcr_cassettes/search/request/facets.yml
|
161
|
+
- spec/fixtures/vcr_cassettes/search/request/facets_with_constraints.yml
|
160
162
|
- spec/fixtures/vcr_cassettes/search/request/full.yml
|
161
163
|
- spec/fixtures/vcr_cassettes/search/request/paginated.yml
|
162
164
|
- spec/fixtures/vcr_cassettes/search/request/paginated_first_page.yml
|
@@ -175,12 +177,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
175
177
|
- - ! '>='
|
176
178
|
- !ruby/object:Gem::Version
|
177
179
|
version: '0'
|
180
|
+
segments:
|
181
|
+
- 0
|
182
|
+
hash: -425628633899078667
|
178
183
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
179
184
|
none: false
|
180
185
|
requirements:
|
181
186
|
- - ! '>='
|
182
187
|
- !ruby/object:Gem::Version
|
183
188
|
version: '0'
|
189
|
+
segments:
|
190
|
+
- 0
|
191
|
+
hash: -425628633899078667
|
184
192
|
requirements: []
|
185
193
|
rubyforge_project:
|
186
194
|
rubygems_version: 1.8.24
|
@@ -198,10 +206,11 @@ test_files:
|
|
198
206
|
- spec/fixtures/vcr_cassettes/index/request/add.yml
|
199
207
|
- spec/fixtures/vcr_cassettes/index/request/add_in_batch.yml
|
200
208
|
- spec/fixtures/vcr_cassettes/index/request/delete.yml
|
209
|
+
- spec/fixtures/vcr_cassettes/search/request/facets.yml
|
210
|
+
- spec/fixtures/vcr_cassettes/search/request/facets_with_constraints.yml
|
201
211
|
- spec/fixtures/vcr_cassettes/search/request/full.yml
|
202
212
|
- spec/fixtures/vcr_cassettes/search/request/paginated.yml
|
203
213
|
- spec/fixtures/vcr_cassettes/search/request/paginated_first_page.yml
|
204
214
|
- spec/fixtures/vcr_cassettes/search/request/paginated_second_page.yml
|
205
215
|
- spec/spec_helper.rb
|
206
216
|
- spec/support/vcr.rb
|
207
|
-
has_rdoc:
|