leanback 0.3.3 → 0.3.4

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.
@@ -1,3 +1,38 @@
1
+ =0.3.4
2
+ June 2, 2013
3
+ * added options for manipulating query results, the options available are limit, skip, descending, startkey, endkey
4
+ Example
5
+ options = {:skip => 10,:limit => 20}
6
+ Couchdb.find_by({:database => 'contacts', :gender => 'female'},auth_session, options)
7
+ This will skip the first 10 results and return the next 20 that match the key :gender => 'female'
8
+
9
+ Another example
10
+ options = {:startkey => "53000", :endkey => "99000",:limit => 20}
11
+ Couchdb.find_by({:database => 'employees', :salary => ''},auth_session, options)
12
+ This will return all employees with salary between 53000 and 99000.
13
+
14
+ Direct view query:
15
+ view = { :database => "employees",
16
+ :design_doc => 'salary_finder',
17
+ :view => 'find_by_salary'}
18
+ options = {:startkey => "53000", :endkey => "99000"}
19
+ Couchdb.find view, auth_session,key=nil, options
20
+ This will also return all employees with salary between 53000 and 99000.
21
+ See leanback documentation for details.
22
+
23
+ =0.3.3
24
+ May 26, 2013
25
+ * Added ability to count the number of documents in a database by a specified key.
26
+ Example:
27
+ Couchdb.count({:database => 'contacts', :gender => 'female'},auth_session)
28
+ # => 8
29
+ This will count the number of documents with gender = 'female'
30
+ See leanback documentation for details.
31
+
32
+ =0.3.2
33
+ December 01, 2012
34
+ * Fixed issues with invalid JSON on CouchDB 1.2.0
35
+
1
36
  =Leanback 0.3.1
2
37
  December 5,2011
3
38
  * Added ability to change password for non-admin users.
data/README.md CHANGED
@@ -13,6 +13,9 @@ This project is still under development. Not complete by any means. I made this
13
13
  ##Compatibility
14
14
  Upgraded and tested on CouchDB 1.2.0. CouchDB 1.0.1 should still work fine.
15
15
 
16
+ ##Changes
17
+ (https://github.com/obi-a/leanback/blob/master/Changelog.rdoc)
18
+
16
19
  ##Usage
17
20
 
18
21
 
@@ -24,6 +27,8 @@ Upgraded and tested on CouchDB 1.2.0. CouchDB 1.0.1 should still work fine.
24
27
 
25
28
  + [Find Documents by Key](http://www.whisperservers.com/leanback/find-documents-by-key/)
26
29
 
30
+ + [Count Documents by Key](http://www.whisperservers.com/leanback/count-documents-by-key/)
31
+
27
32
  + Working with [CouchDB Views](http://www.whisperservers.com/leanback/design-documents-and-permanent-views/)
28
33
 
29
34
  + [Error Handling](http://www.whisperservers.com/leanback/error-handling/)
@@ -39,6 +44,6 @@ MIT License.
39
44
 
40
45
  ##Copyright
41
46
 
42
- Copyright (c) 2011 Obi Akubue.
47
+ Copyright (c) 2013 Obi Akubue.
43
48
 
44
49
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.3
1
+ 0.3.4
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "leanback"
8
- s.version = "0.3.3"
8
+ s.version = "0.3.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Obi Akubue"]
12
- s.date = "2013-05-26"
12
+ s.date = "2013-06-02"
13
13
  s.description = "lightweight Ruby interface to CouchDB"
14
14
  s.email = "obioraakubue@yahoo.com"
15
15
  s.extra_rdoc_files = [
@@ -35,6 +35,7 @@ Gem::Specification.new do |s|
35
35
  "test/main.rb",
36
36
  "test/my_view.json",
37
37
  "test/my_views.json",
38
+ "test/start.json",
38
39
  "test/test_leanback.rb",
39
40
  "test/view_age.json"
40
41
  ]
@@ -258,17 +258,53 @@ def self.view(doc,auth_session = "")
258
258
  end
259
259
  end
260
260
 
261
+ def self.get_params(options)
262
+ params = ""
263
+ if options.has_key?(:startkey)
264
+ if options[:startkey].is_a? String
265
+ params = 'startkey="' + options[:startkey] + '"'
266
+ else
267
+ params = 'startkey=' + options[:startkey].to_s # for complex keys
268
+ end
269
+ end
270
+ if options.has_key?(:endkey)
271
+ if options[:endkey].is_a? String
272
+ params = params + '&endkey="' + options[:endkey] + '"'
273
+ else
274
+ params = params + '&endkey=' + options[:endkey].to_s #for complex keys
275
+ end
276
+ end
277
+
278
+ if options.has_key?(:limit)
279
+ params = params + "&" + "limit=" + options[:limit].to_s
280
+ end
281
+
282
+ if options.has_key?(:skip)
283
+ params = params + "&" + "skip=" + options[:skip].to_s
284
+ end
285
+
286
+ if options.has_key?(:descending)
287
+ params = params + "&" + "descending=true"
288
+ end
289
+
290
+ return params
291
+ end
292
+
293
+
261
294
  #query a permanent view
262
- def self.find(doc,auth_session = "",key=nil)
295
+ def self.find(doc,auth_session = "", key=nil, options = {})
263
296
  set_address
264
297
  db_name = doc[:database]
265
298
  design_doc_name = doc[:design_doc]
266
299
  view_name = doc[:view]
300
+ params = get_params(options)
301
+
267
302
  begin
268
303
  if key == nil
269
- response = RestClient.get 'http://' + @address + ':' + @port + '/' + db_name + '/_design/' + design_doc_name + '/_view/' + view_name,{:cookies => {"AuthSession" => auth_session}}
304
+ response = RestClient.get 'http://' + @address + ':' + @port + '/' + db_name + '/_design/' + design_doc_name + '/_view/' + view_name + '?' + URI.escape(params),{:cookies => {"AuthSession" => auth_session}}
270
305
  else
271
- response = RestClient.get 'http://' + @address + ':' + @port + '/' + db_name + '/_design/' + design_doc_name + '/_view/' + view_name + URI.escape('?key="' + key + '"'),{:cookies => {"AuthSession" => auth_session}}
306
+ key = URI.escape('?key="' + key + '"')
307
+ response = RestClient.get 'http://' + @address + ':' + @port + '/' + db_name + '/_design/' + design_doc_name + '/_view/' + view_name + key + '&' + URI.escape(params) ,{:cookies => {"AuthSession" => auth_session}}
272
308
  end
273
309
  hash = Yajl::Parser.parse(response.to_str)
274
310
  rows = hash["rows"]
@@ -279,7 +315,6 @@ def self.find(doc,auth_session = "",key=nil)
279
315
  end
280
316
  return rows
281
317
  rescue => e
282
- #puts e.inspect
283
318
  hash = Yajl::Parser.parse(e.response.to_s)
284
319
  raise CouchdbException.new(hash), "CouchDB: Error - " + hash.values[0] + ". Reason - " + hash.values[1]
285
320
  end
@@ -311,7 +346,7 @@ def self.create_design(doc,auth_session = "")
311
346
  end
312
347
 
313
348
  #Query view, create view on fly if it dosen't already exist
314
- def self.find_on_fly(doc,auth_session = "",key = nil)
349
+ def self.find_on_fly(doc,auth_session = "",key = nil, options = {})
315
350
  db_name = doc[:database]
316
351
  design_doc = doc[:design_doc]
317
352
  view = doc[:view]
@@ -319,17 +354,17 @@ def self.find_on_fly(doc,auth_session = "",key = nil)
319
354
 
320
355
  begin
321
356
  if( key == nil)
322
- docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session)
357
+ docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session,key=nil,options)
323
358
  else
324
- docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session,key)
359
+ docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session,key,options)
325
360
  end
326
361
  rescue CouchdbException => e
327
362
  document = { :database => db_name, :design_doc => design_doc, :json_doc => json_doc}
328
363
  create_design document,auth_session
329
364
  if( key == nil)
330
- docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session)
365
+ docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session,key=nil,options)
331
366
  else
332
- docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session,key)
367
+ docs = find({:database => db_name, :design_doc => design_doc, :view => view},auth_session,key,options)
333
368
  end
334
369
  end
335
370
  return docs
@@ -409,7 +444,7 @@ def self.count(options,auth_session = "")
409
444
  end
410
445
 
411
446
  #find by key
412
- def self.find_by(options,auth_session = "")
447
+ def self.find_by(options,auth_session = "", params = {})
413
448
  set_address
414
449
  db_name = options[:database]
415
450
  index = options.keys[1].to_s
@@ -419,12 +454,12 @@ def self.find_by(options,auth_session = "")
419
454
 
420
455
  begin
421
456
  view = { :database => db_name, :design_doc => design_doc_name, :view => view_name}
422
- docs = find view,auth_session,search_term
457
+ docs = find view,auth_session,search_term,params
423
458
  rescue CouchdbException => e
424
459
  #add a finder/index if one doesn't already exist in the database
425
460
  #then find_by_key
426
461
  add_finder({:database => db_name, :key => index},auth_session)
427
- docs = find view,auth_session,search_term
462
+ docs = find view,auth_session,search_term,params
428
463
  end
429
464
  return docs
430
465
  end
@@ -185,6 +185,133 @@ it "should delete a document after creating it" do
185
185
  end
186
186
  end
187
187
 
188
+
189
+ it "should test finder options" do
190
+
191
+ Couchdb.create('fishes')
192
+
193
+ data = {:firstname => 'aaron', :gender =>'male', :age => '28', :salary => '50000'}
194
+ doc = {:database => 'fishes', :doc_id => 'aaron', :data => data}
195
+ Couchdb.create_doc doc
196
+
197
+ data = {:firstname => 'john', :gender =>'male', :age => '28', :salary => '60000'}
198
+ doc = {:database => 'fishes', :doc_id => 'john', :data => data}
199
+ Couchdb.create_doc doc
200
+
201
+ data = {:firstname => 'peter', :gender =>'male', :age => '45', :salary => '78000'}
202
+ doc = {:database => 'fishes', :doc_id => 'peter', :data => data}
203
+ Couchdb.create_doc doc
204
+
205
+ data = {:firstname => 'sam', :gender =>'male', :age => '28', :salary => '97000'}
206
+ doc = {:database => 'fishes', :doc_id => 'sam', :data => data}
207
+ Couchdb.create_doc doc
208
+
209
+ #create the design doc to be queryed in the test
210
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'})
211
+
212
+
213
+ view = { :database => "fishes",
214
+ :design_doc => 'gender_finder',
215
+ :view => 'find_by_gender'}
216
+
217
+ hash = Couchdb.find view,"",key=nil, options = {:limit => 2, :skip => 1}
218
+ h = hash[0]
219
+ h["firstname"].should == "john"
220
+ hash.length.should == 2
221
+
222
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},"",options = {:limit => 2, :skip => 1})
223
+ h = hash[0]
224
+ h["firstname"].should == "john"
225
+ hash.length.should == 2
226
+
227
+
228
+
229
+ hash = Couchdb.find view,"",key='male', options = {:descending => true}
230
+ h = hash[0]
231
+ h["firstname"].should == "sam"
232
+
233
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},"", options = {:descending => true})
234
+ h = hash[0]
235
+ h["firstname"].should == "sam"
236
+
237
+
238
+
239
+ hash = Couchdb.find view,"",key='male', options = {:limit => 3}
240
+ hash.length.should == 3
241
+
242
+ hash = Couchdb.find view,"",key=nil, options = {:skip => 2}
243
+ h = hash[0]
244
+ h["firstname"].should == "peter"
245
+ hash.length.should == 2
246
+
247
+ hash = Couchdb.find view,"",key='male', options = {:descending => true,:limit => 1}
248
+ h = hash[0]
249
+ h["firstname"].should == "sam"
250
+ hash.length.should == 1
251
+
252
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},"", options = {:descending => true,:limit => 1})
253
+ h = hash[0]
254
+ h["firstname"].should == "sam"
255
+ hash.length.should == 1
256
+
257
+ Couchdb.find_by({:database => 'fishes', :salary => '5000'})
258
+
259
+
260
+ view = { :database => "fishes",
261
+ :design_doc => 'salary_finder',
262
+ :view => 'find_by_salary'}
263
+
264
+ hash = Couchdb.find view, "",key=nil, options = {:startkey => "3000", :endkey => "65000"}
265
+ h = hash[0]
266
+ h["firstname"].should == "aaron"
267
+ hash.length.should == 2
268
+
269
+ hash = Couchdb.find view, "",key=nil, options = {:startkey => "53000", :endkey => "99000",:limit => 2}
270
+ h = hash[0]
271
+ h["firstname"].should == "john"
272
+ hash.length.should == 2
273
+
274
+ Couchdb.find_by({:database => 'fishes', :salary => '5000'},"", options = {:startkey => "53000", :endkey => "99000",:limit => 2})
275
+ h = hash[0]
276
+ h["firstname"].should == "john"
277
+ hash.length.should == 2
278
+
279
+ view = {:database => 'fishes',
280
+ :design_doc => 'my_views',
281
+ :view => 'age_gender',
282
+ :json_doc => '/home/obi/bin/leanback/test/start.json'}
283
+
284
+ options = {:startkey => ["28","male"], :endkey => ["28","male"], :limit => 2}
285
+
286
+ hash = Couchdb.find_on_fly(view,"",key=nil, options)
287
+ h0 = hash[0]
288
+ h1 = hash[1]
289
+ h0["firstname"].should == "aaron"
290
+ h1["firstname"].should == "john"
291
+ hash.length.should == 2
292
+
293
+ options = {:startkey => ["28","male"], :endkey => ["28","male"], :skip => 1}
294
+
295
+ hash = Couchdb.find_on_fly(view,"",key=nil, options)
296
+ h0 = hash[0]
297
+ h1 = hash[1]
298
+ h0["firstname"].should == "john"
299
+ h1["firstname"].should == "sam"
300
+ hash.length.should == 2
301
+
302
+
303
+ options = {:startkey => ["28","male"], :endkey => ["28","male"]}
304
+
305
+ hash = Couchdb.find_on_fly(view,"",key=nil, options)
306
+ h0 = hash[0]
307
+ h1 = hash[1]
308
+ h0["firstname"].should == "aaron"
309
+ h1["firstname"].should == "john"
310
+ hash.length.should == 3
311
+
312
+ Couchdb.delete 'fishes'
313
+ end
314
+
188
315
  #database: administration tasks
189
316
 
190
317
  it "should set a config section, retrieve it and delete it" do
@@ -194,6 +194,132 @@ it "should delete a document after creating it" do
194
194
  end
195
195
  end
196
196
 
197
+ it "should test finder options" do
198
+
199
+ Couchdb.create('fishes',@@auth_session)
200
+
201
+ data = {:firstname => 'aaron', :gender =>'male', :age => '28', :salary => '50000'}
202
+ doc = {:database => 'fishes', :doc_id => 'aaron', :data => data}
203
+ Couchdb.create_doc doc,@@auth_session
204
+
205
+ data = {:firstname => 'john', :gender =>'male', :age => '28', :salary => '60000'}
206
+ doc = {:database => 'fishes', :doc_id => 'john', :data => data}
207
+ Couchdb.create_doc doc,@@auth_session
208
+
209
+ data = {:firstname => 'peter', :gender =>'male', :age => '45', :salary => '78000'}
210
+ doc = {:database => 'fishes', :doc_id => 'peter', :data => data}
211
+ Couchdb.create_doc doc,@@auth_session
212
+
213
+ data = {:firstname => 'sam', :gender =>'male', :age => '28', :salary => '97000'}
214
+ doc = {:database => 'fishes', :doc_id => 'sam', :data => data}
215
+ Couchdb.create_doc doc,@@auth_session
216
+
217
+ #create the design doc to be queryed in the test
218
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},@@auth_session)
219
+
220
+
221
+ view = { :database => "fishes",
222
+ :design_doc => 'gender_finder',
223
+ :view => 'find_by_gender'}
224
+
225
+ hash = Couchdb.find view,@@auth_session,key=nil, options = {:limit => 2, :skip => 1}
226
+ h = hash[0]
227
+ h["firstname"].should == "john"
228
+ hash.length.should == 2
229
+
230
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},@@auth_session,options = {:limit => 2, :skip => 1})
231
+ h = hash[0]
232
+ h["firstname"].should == "john"
233
+ hash.length.should == 2
234
+
235
+
236
+
237
+ hash = Couchdb.find view,@@auth_session,key='male', options = {:descending => true}
238
+ h = hash[0]
239
+ h["firstname"].should == "sam"
240
+
241
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},@@auth_session, options = {:descending => true})
242
+ h = hash[0]
243
+ h["firstname"].should == "sam"
244
+
245
+
246
+
247
+ hash = Couchdb.find view,@@auth_session,key='male', options = {:limit => 3}
248
+ hash.length.should == 3
249
+
250
+ hash = Couchdb.find view,@@auth_session,key=nil, options = {:skip => 2}
251
+ h = hash[0]
252
+ h["firstname"].should == "peter"
253
+ hash.length.should == 2
254
+
255
+ hash = Couchdb.find view,@@auth_session,key='male', options = {:descending => true,:limit => 1}
256
+ h = hash[0]
257
+ h["firstname"].should == "sam"
258
+ hash.length.should == 1
259
+
260
+ Couchdb.find_by({:database => 'fishes', :gender => 'male'},@@auth_session, options = {:descending => true,:limit => 1})
261
+ h = hash[0]
262
+ h["firstname"].should == "sam"
263
+ hash.length.should == 1
264
+
265
+ Couchdb.find_by({:database => 'fishes', :salary => '5000'},@@auth_session)
266
+
267
+
268
+ view = { :database => "fishes",
269
+ :design_doc => 'salary_finder',
270
+ :view => 'find_by_salary'}
271
+
272
+ hash = Couchdb.find view, @@auth_session,key=nil, options = {:startkey => "3000", :endkey => "65000"}
273
+ h = hash[0]
274
+ h["firstname"].should == "aaron"
275
+ hash.length.should == 2
276
+
277
+ hash = Couchdb.find view, @@auth_session,key=nil, options = {:startkey => "53000", :endkey => "99000",:limit => 2}
278
+ h = hash[0]
279
+ h["firstname"].should == "john"
280
+ hash.length.should == 2
281
+
282
+ Couchdb.find_by({:database => 'fishes', :salary => ''},@@auth_session, options = {:startkey => "53000", :endkey => "99000",:limit => 2})
283
+ h = hash[0]
284
+ h["firstname"].should == "john"
285
+ hash.length.should == 2
286
+
287
+ view = {:database => 'fishes',
288
+ :design_doc => 'my_views',
289
+ :view => 'age_gender',
290
+ :json_doc => '/home/obi/bin/leanback/test/start.json'}
291
+
292
+ options = {:startkey => ["28","male"], :endkey => ["28","male"], :limit => 2}
293
+
294
+ hash = Couchdb.find_on_fly(view,@@auth_session,key=nil, options)
295
+ h0 = hash[0]
296
+ h1 = hash[1]
297
+ h0["firstname"].should == "aaron"
298
+ h1["firstname"].should == "john"
299
+ hash.length.should == 2
300
+
301
+ options = {:startkey => ["28","male"], :endkey => ["28","male"], :skip => 1}
302
+
303
+ hash = Couchdb.find_on_fly(view,@@auth_session,key=nil, options)
304
+ h0 = hash[0]
305
+ h1 = hash[1]
306
+ h0["firstname"].should == "john"
307
+ h1["firstname"].should == "sam"
308
+ hash.length.should == 2
309
+
310
+
311
+ options = {:startkey => ["28","male"], :endkey => ["28","male"]}
312
+
313
+ hash = Couchdb.find_on_fly(view,@@auth_session,key=nil, options)
314
+ h0 = hash[0]
315
+ h1 = hash[1]
316
+ h0["firstname"].should == "aaron"
317
+ h1["firstname"].should == "john"
318
+ hash.length.should == 3
319
+
320
+ Couchdb.delete 'fishes',@@auth_session
321
+ end
322
+
197
323
  #database: administration tasks
198
324
 
199
325
  it "should set a config section, retrieve it and delete it" do
@@ -16,10 +16,53 @@ data = {:section => "admins",
16
16
  hash = Couchdb.login(username = 'obi',password ='trusted')
17
17
  auth_session = hash["AuthSession"]
18
18
 
19
+
20
+ view = { :database => "monitors",
21
+ :design_doc => 'tag_finder',
22
+ :view => 'find_by_tag'}
23
+
24
+ #hash = Couchdb.find view,auth_session,key='ralph', options = {:limit => 5, :skip => 1}
25
+
26
+ #hash = Couchdb.find view,auth_session,key='ralph', options = {:limit => 5}
27
+
28
+
29
+ #Couchdb.find_by({:database => 'zralph1369728249zeb1292e18b998352', :timestamp => 'Smith'},auth_session)
30
+
31
+ #Couchdb.find_by({:database => 'monitors', :test => 'Smith'},auth_session)
32
+
33
+ view = { :database => "zralph1369728249zeb1292e18b998352",
34
+ :design_doc => 'timestamp_finder',
35
+ :view => 'find_by_timestamp'}
36
+
37
+ #hash = Couchdb.find view,auth_session,key=nil, options = {:startkey => "100", :endkey => "1369728370"}
38
+
39
+ #hash = Couchdb.find view,auth_session,key="1369728370"
40
+
41
+ #start 2013-05-29 20:22:07 -0400 1369873327
42
+ #end 2013-05-29 20:19:07 -0400 1369873147
43
+
44
+ view = { :database => "monitors",
45
+ :design_doc => 'test_finder',
46
+ :view => 'find_by_test'}
47
+ hash = Couchdb.find view,auth_session,key=nil, options = {:startkey => ["1000","UP"], :endkey => ["6000","UP"]}
48
+
49
+ #hash = Couchdb.find view,auth_session,key=nil, options = {:startkey => ["3300","UP"],:descending => true}
50
+
51
+ #hash = Couchdb.find view,auth_session,key=nil, options = {:descending => true}
52
+
53
+ #hash = Couchdb.find view,auth_session,key= {:keys => ['3300','UP']}
54
+
55
+ #hash = Couchdb.find view,auth_session,key= '?keys=%5B%228800%22,%22UP%22%5D'
56
+
57
+ puts hash.inspect
58
+
59
+
60
+ ###END OF KEYS TESTING########
61
+
19
62
  #user = { :username => "david", :password => "trusted", :roles => []}
20
63
  #Couchdb.add_user(user, auth_session )
21
64
 
22
- hash = Couchdb.delete 'staff',auth_session
65
+ #hash = Couchdb.delete 'staff',auth_session
23
66
 
24
67
  #puts auth_session
25
68
 
@@ -0,0 +1,8 @@
1
+ {
2
+ "language" : "javascript",
3
+ "views" :{
4
+ "age_gender" : {
5
+ "map" : "function(doc){ if(doc.age && doc.gender) emit([doc.age, doc.gender],doc); }"
6
+ }
7
+ }
8
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: leanback
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.3.4
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: 2013-05-26 00:00:00.000000000 Z
12
+ date: 2013-06-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rest-client
@@ -149,6 +149,7 @@ files:
149
149
  - test/main.rb
150
150
  - test/my_view.json
151
151
  - test/my_views.json
152
+ - test/start.json
152
153
  - test/test_leanback.rb
153
154
  - test/view_age.json
154
155
  homepage: http://github.com/obi-a/leanback
@@ -166,7 +167,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
166
167
  version: '0'
167
168
  segments:
168
169
  - 0
169
- hash: -746348248553049715
170
+ hash: 887863200366044810
170
171
  required_rubygems_version: !ruby/object:Gem::Requirement
171
172
  none: false
172
173
  requirements: