leanback 0.4.2 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +10 -0
  3. data/Gemfile +5 -6
  4. data/Gemfile.lock +65 -14
  5. data/README.md +465 -33
  6. data/Rakefile +8 -17
  7. data/VERSION +1 -1
  8. data/leanback.gemspec +26 -85
  9. data/lib/leanback.rb +129 -587
  10. data/spec/leanback_spec.rb +356 -0
  11. metadata +40 -117
  12. data/Changelog.rdoc +0 -146
  13. data/documentation/static/2011/11/20/i-moved-leanback-documentation/index.html +0 -180
  14. data/documentation/static/2011/11/20/index.html +0 -146
  15. data/documentation/static/2011/11/index.html +0 -146
  16. data/documentation/static/2011/index.html +0 -146
  17. data/documentation/static/2013/06/02/index.html +0 -146
  18. data/documentation/static/2013/06/02/released-leanback-v0-3-4/index.html +0 -180
  19. data/documentation/static/2013/06/09/index.html +0 -146
  20. data/documentation/static/2013/06/09/released-leanback-v0-4-0/index.html +0 -179
  21. data/documentation/static/2013/06/index.html +0 -158
  22. data/documentation/static/2013/index.html +0 -158
  23. data/documentation/static/author/admin/index.html +0 -175
  24. data/documentation/static/basic-couchdb-operations/index.html +0 -259
  25. data/documentation/static/category/uncategorized/index.html +0 -170
  26. data/documentation/static/couchdb-configuration/index.html +0 -189
  27. data/documentation/static/couchdb-security/index.html +0 -218
  28. data/documentation/static/count-by-multiple-documents/index.html +0 -221
  29. data/documentation/static/count-documents-by-key/index.html +0 -177
  30. data/documentation/static/css/2c-l-fixed.css +0 -1
  31. data/documentation/static/css/2c-l-fixed.dev.css +0 -62
  32. data/documentation/static/css/2c-r-fixed.css +0 -1
  33. data/documentation/static/css/2c-r-fixed.dev.css +0 -60
  34. data/documentation/static/css/3c-c-fixed.css +0 -1
  35. data/documentation/static/css/3c-c-fixed.dev.css +0 -84
  36. data/documentation/static/css/3c-l-fixed.css +0 -1
  37. data/documentation/static/css/3c-l-fixed.dev.css +0 -61
  38. data/documentation/static/css/3c-r-fixed.css +0 -1
  39. data/documentation/static/css/3c-r-fixed.dev.css +0 -62
  40. data/documentation/static/css/holy-grail-fluid.css +0 -5
  41. data/documentation/static/css/plugins.css +0 -5
  42. data/documentation/static/css/print.css +0 -5
  43. data/documentation/static/css/screen.css +0 -1
  44. data/documentation/static/design-documents-and-permanent-views/index.html +0 -454
  45. data/documentation/static/error-handling/index.html +0 -157
  46. data/documentation/static/find-document-by-multiple-keys/index.html +0 -269
  47. data/documentation/static/find-documents-by-key/index.html +0 -243
  48. data/documentation/static/index.html +0 -161
  49. data/documentation/static/leanback/index.html +0 -130
  50. data/documentation/static/leanback/installation/index.html +0 -119
  51. data/documentation/static/setting-the-bind_address-port/index.html +0 -151
  52. data/documentation/static/style.css +0 -16
  53. data/spec/admin_party/database_spec.rb +0 -400
  54. data/spec/no_admin_party/cloudant_spec.rb +0 -365
  55. data/spec/no_admin_party/database_spec.rb +0 -491
  56. data/spec/no_admin_party/non_admin_user_spec.rb +0 -67
  57. data/test/helper.rb +0 -18
  58. data/test/main.rb +0 -295
  59. data/test/my_view.json +0 -8
  60. data/test/my_views.json +0 -8
  61. data/test/start.json +0 -8
  62. data/test/test_leanback.rb +0 -319
  63. data/test/view_age.json +0 -8
@@ -0,0 +1,356 @@
1
+ require 'spec_base'
2
+
3
+ def db_settings(database_name)
4
+ db_credentials = { username: ENV["COUCHDB_ADMIN_USERNAME"],
5
+ password: ENV["COUCHDB_ADMIN_PASSWORD"]
6
+ }
7
+ db_credentials.merge({database: database_name})
8
+ end
9
+
10
+ describe "CouchDB" do
11
+ describe "#create" do
12
+ it "creates a database" do
13
+ testdb = Leanback::Couchdb.new db_settings("testdb")
14
+ testdb.create.should == {ok: true}
15
+ testdb.delete.should == {ok: true}
16
+ end
17
+ it "raises an exception when database name is non string" do
18
+ testdb = Leanback::Couchdb.new db_settings(:testdb)
19
+ expect{ testdb.create }.to raise_error(Leanback::InvalidDatabaseName)
20
+ end
21
+ it "raises an exception when creating a database that already exists" do
22
+ #setup
23
+ mytestdb = Leanback::Couchdb.new db_settings("mytestdb")
24
+ #ceate database
25
+ mytestdb.create
26
+ #try recreating the database that already exists
27
+ expect{ mytestdb.create }.to raise_error(Leanback::CouchdbException)
28
+ #cleanup
29
+ mytestdb.delete
30
+ end
31
+ it "raises an exception when it cannot connect to database" do
32
+ #raises the exception when it is from a non couchdb issue
33
+ a_database = Leanback::Couchdb.new database: "adatabase", port: 9999
34
+ expect{ a_database.create }.to raise_error(Errno::ECONNREFUSED)
35
+ end
36
+ end
37
+ describe "#delete" do
38
+ it "deletes a database" do
39
+ testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
40
+ testdb.create
41
+ testdb.delete.should include(ok: true)
42
+ end
43
+ it "raises an exception when deleting a database that don't exist" do
44
+ #raises a Leanback::CouchdbException when exception is a couchdb issue
45
+ mydatabase = Leanback::Couchdb.new db_settings("mydatabase")
46
+ expect{ mydatabase.delete }.to raise_error(Leanback::CouchdbException)
47
+ end
48
+ end
49
+ describe "#create_doc" do
50
+ before(:each) do
51
+ @contacts = Leanback::Couchdb.new db_settings("contacts")
52
+ @contacts.create
53
+ end
54
+ it "creates a document" do
55
+ hash = @contacts.create_doc("linda", {})
56
+ hash.should include(ok: true, id: "linda")
57
+ hash.include?(:rev).should == true
58
+ end
59
+ it "raises exception for incorrect document id format" do
60
+ expect{ @contacts.create_doc(:linda, {}) }.to raise_error(Leanback::InvalidDocumentID)
61
+ end
62
+ it "raises exception for incorrect document data format" do
63
+ expect{ @contacts.create_doc("david", [])}.to raise_error(Leanback::CouchdbException)
64
+ end
65
+ after(:each) do
66
+ @contacts.delete
67
+ end
68
+ end
69
+ describe "#delete_doc" do
70
+ before(:each) do
71
+ @testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
72
+ @testdb.create
73
+ @doc_id = "john"
74
+ created_doc_hash = @testdb.create_doc @doc_id, {}
75
+ @rev = created_doc_hash[:rev]
76
+ end
77
+ it "deletes a document with revision" do
78
+ deleted_doc_hash = @testdb.delete_doc @doc_id, @rev
79
+ deleted_doc_hash.should include(ok: true, id: @doc_id)
80
+ deleted_doc_hash.include?(:rev).should == true
81
+ end
82
+ it "raises an exception when revision is not found" do
83
+ wrongrev = "5-d5e25dea1ae936b802392bade1de7d93"
84
+ expect{ @testdb.delete_doc @doc_id, wrongrev }.to raise_error(Leanback::CouchdbException)
85
+ end
86
+ it "raises an exception when revision is in wrong format" do
87
+ expect{ @testdb.delete_doc @doc_id, "wrongformat" }.to raise_error(Leanback::CouchdbException)
88
+ end
89
+ it "raises an exception when document cannot be found" do
90
+ expect{ @testdb.delete_doc("not_found", "something") }.to raise_error(Leanback::CouchdbException)
91
+ end
92
+ after(:each) do
93
+ @testdb.delete
94
+ end
95
+ end
96
+ describe "#delete_doc!" do
97
+ before(:each) do
98
+ @testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
99
+ @testdb.create
100
+ end
101
+ it "deletes a doc with no revision" do
102
+ @testdb.create_doc "john", {}
103
+ deleted_doc_hash = @testdb.delete_doc! "john"
104
+ deleted_doc_hash.should include(ok: true, id: "john")
105
+ deleted_doc_hash.include?(:rev).should == true
106
+ end
107
+ it "raises an exception when document cannot be found" do
108
+ expect{ @testdb.delete_doc!("not_found") }.to raise_error(Leanback::CouchdbException)
109
+ end
110
+ after(:each) do
111
+ @testdb.delete
112
+ end
113
+ end
114
+ describe "#get_doc" do
115
+ before(:each) do
116
+ @testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
117
+ @testdb.create
118
+ @testdb.create_doc("james", {lastname: "smith"})
119
+ end
120
+ it "get a document" do
121
+ doc = @testdb.get_doc "james"
122
+ doc.should == {_id: "james", _rev: doc[:_rev], lastname: "smith"}
123
+ end
124
+ it "raises an exception when trying to get document that dont exist" do
125
+ expect{ @testdb.get_doc "dont_exist" }.to raise_error(Leanback::CouchdbException)
126
+ end
127
+ after(:each) do
128
+ @testdb.delete
129
+ end
130
+ end
131
+ describe "#update_doc" do
132
+ before(:each) do
133
+ @testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
134
+ @testdb.create
135
+ doc = @testdb.create_doc("kevin",{firstname: "kevin"})
136
+ @rev = doc[:rev]
137
+ @doc_id = "kevin"
138
+ end
139
+ it "updates a document using a revision" do
140
+ new_firstname = "martin"
141
+ new_doc = @testdb.update_doc @doc_id, _rev: @rev, firstname: new_firstname
142
+ new_doc.should include(ok: true, id: @doc_id)
143
+ doc = @testdb.get_doc @doc_id
144
+ doc[:firstname].should == "martin"
145
+ end
146
+ it "raises an exception when revision is in wrong format" do
147
+ expect{ @testdb.update_doc @doc_id, _rev: "wrongformat", firstname: "mark" }.to raise_error(Leanback::CouchdbException)
148
+ end
149
+ it "raises an exception when revision is not found" do
150
+ wrongrev = "5-d5e25dea1ae936b802392bade1de7d93"
151
+ expect{ @testdb.update_doc @doc_id, _rev: wrongrev, firstname: "mark" }.to raise_error(Leanback::CouchdbException)
152
+ end
153
+ it "creates a new document when provided doc_id is not found" do
154
+ result = @testdb.update_doc "notfound", _rev: @rev, firstname: "mark"
155
+ result.should include(ok: true, id: "notfound" )
156
+ result.include?(:rev).should == true
157
+ end
158
+ after(:each) do
159
+ @testdb.delete
160
+ end
161
+ end
162
+ describe "#edit_doc!" do
163
+ before(:each) do
164
+ @testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
165
+ @testdb.create
166
+ doc = @testdb.create_doc("kevin",{firstname: "kevin"})
167
+ @doc_id = "kevin"
168
+ end
169
+ it "edits a document's existing data" do
170
+ new_firstname = "nancy"
171
+ new_doc = @testdb.edit_doc! @doc_id, firstname: new_firstname
172
+ new_doc.should include(ok: true, id: @doc_id)
173
+ doc = @testdb.get_doc @doc_id
174
+ doc[:firstname].should == "nancy"
175
+ end
176
+ it "edits a document adding new data" do
177
+ lastname = "smith"
178
+ @testdb.edit_doc!(@doc_id, lastname: lastname)
179
+ doc = @testdb.get_doc(@doc_id)
180
+ doc.should include(_id: @doc_id, firstname: "kevin", lastname: lastname)
181
+ end
182
+ it "raises an exception when document cannot be found" do
183
+ expect{ @testdb.edit_doc!("notfound", firstname: "jackson") }.to raise_error(Leanback::CouchdbException)
184
+ end
185
+ after(:each) do
186
+ @testdb.delete
187
+ end
188
+ end
189
+ describe "#security_object" do
190
+ before(:each) do
191
+ @testdb = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
192
+ @testdb.create
193
+ @security_settings = { admins: {names: ["david"], roles: ["admin"]},
194
+ readers: {names: ["david"],roles: ["admin"]}
195
+ }
196
+ #sets security object
197
+ @testdb.security_object = @security_settings
198
+ end
199
+ it "sets security object for database" do
200
+ @testdb.security_object.should == @security_settings
201
+ end
202
+ it "sets security object with only admins access control settings" do
203
+ only_admins = { admins: {names: ["david"], roles: ["admin"]}
204
+ }
205
+ @testdb.security_object = only_admins
206
+ @testdb.security_object.should == only_admins
207
+ end
208
+ it "clears security object" do
209
+ @testdb.security_object = {}
210
+ @testdb.security_object.should == {}
211
+ end
212
+ after(:each) do
213
+ @testdb.delete
214
+ end
215
+ end
216
+ describe "queries" do
217
+ before(:each) do
218
+ @db = Leanback::Couchdb.new db_settings("testdb#{Time.now.to_i}")
219
+ @db.create
220
+ @db.create_doc "christina", firstname: "christina", state: "new york", gender: "female", city: "bronx", age: 22
221
+ @db.create_doc "james", firstname: "james", state: "new york", gender: "male", city: "manhattan", age: 23
222
+ @db.create_doc "kevin", firstname: "kevin", state: "new york", gender: "male", city: "bronx", age: 37
223
+ @db.create_doc "lisa", firstname: "lisa", state: "new york", gender: "female", city: "manhattan", age: 31
224
+ @db.create_doc "martin", firstname: "martin", state: "new york", gender: "male", city: "manhattan", age: 29
225
+ @db.create_doc "nancy", firstname: "nancy", state: "new york", gender: "female", city: "bronx", age: 25
226
+ @db.create_doc "susan", firstname: "susan", state: "new york", gender: "female", age: 35, fullname: ["susan", "Lee"]
227
+ design_doc = {
228
+ language: "javascript",
229
+ views: {
230
+ by_gender: {
231
+ map: "function(doc){ if(doc.gender) emit(doc.gender); }"
232
+ }
233
+ }
234
+ }
235
+ @db.create_doc "_design/my_doc", design_doc
236
+ end
237
+ describe "#view" do
238
+ it "can query a permanent view" do
239
+ result = @db.view("_design/my_doc", "by_gender")
240
+ result[:rows].count.should == 7
241
+ result[:rows].first.should include(id: "christina", key: "female")
242
+ end
243
+ it "can query a view by key" do
244
+ result = @db.view("_design/my_doc", "by_gender", key: '"male"')
245
+ result[:rows].count.should == 3
246
+ result[:rows].first.should include(id: "james", key: "male")
247
+ end
248
+ it "can return query results in descending order" do
249
+ result = @db.view("_design/my_doc", "by_gender", key: '"male"', descending: true)
250
+ result[:rows].first.should include(id: "martin", key: "male")
251
+ end
252
+ it "can limit the number of documents returned by query" do
253
+ limit = 4
254
+ result = @db.view("_design/my_doc", "by_gender", limit: limit)
255
+ result[:rows].count.should == limit
256
+ end
257
+ it "can skip some docs in a query result" do
258
+ result = @db.view("_design/my_doc", "by_gender", skip: 2)
259
+ result[:rows].count.should == 5
260
+ end
261
+ it "raises an exception when view is not found" do
262
+ expect{ @db.view("_design/my_doc", "not_found") }.to raise_error(Leanback::CouchdbException)
263
+ end
264
+ it "raises an exception when design_doc is not found" do
265
+ expect{ @db.view("_design/not_found", "by_gender") }.to raise_error(Leanback::CouchdbException)
266
+ end
267
+ it "can query views by startkey to endkey" do
268
+ #return only people in their twenties
269
+ design_doc = {
270
+ language: "javascript",
271
+ views: {
272
+ people_by_age: {
273
+ map: "function(doc){ if(doc.age) emit(doc.age); }"
274
+ }
275
+ }
276
+ }
277
+ @db.create_doc "_design/ages", design_doc
278
+ result = @db.view("_design/ages", "people_by_age", startkey: 20, endkey: 29)
279
+ result[:rows].count.should == 4
280
+ result[:rows].first.should include(id: "christina", key: 22)
281
+
282
+ #return only people 31 and above
283
+ result = @db.view("_design/ages", "people_by_age", startkey: 31)
284
+ result[:rows].count.should == 3
285
+ result[:rows].first.should include(id: "lisa", key: 31)
286
+ end
287
+ it "can query startkey to endkey as a string" do
288
+ result = @db.view("_design/my_doc", "by_gender", startkey: '"female"', endkey: '"female"')
289
+ result[:rows].count.should == 4
290
+ end
291
+ it "can query with compound startkey and endkeys" do
292
+ design_doc = {
293
+ language: "javascript",
294
+ views: {
295
+ people_by_gender_and_city: {
296
+ map: "function(doc){ if(doc.gender && doc.city && doc.age) emit([doc.gender, doc.city, doc.age]);}"
297
+ }
298
+ }
299
+ }
300
+ @db.create_doc "_design/gender_city", design_doc
301
+ result = @db.view("_design/gender_city", "people_by_gender_and_city", startkey: ["female", "bronx", 25].to_s, endkey: ["female", "bronx", 25].to_s)
302
+ result[:rows].count.should == 1
303
+ result[:rows].first.should include(id: "nancy", key: ["female", "bronx", 25])
304
+ end
305
+ end
306
+ describe "#where" do
307
+ it "returns documents that match specified attributes" do
308
+ docs = @db.where state: "new york", gender: "female"
309
+ docs.count.should == 4
310
+
311
+ new_docs = @db.where state: "new york", fullname: ["susan", "Lee"]
312
+ new_docs.first.should include(_id: "susan")
313
+
314
+ other_docs = @db.where city: "manhattan", age: 29
315
+ other_docs.first.should include(_id: "martin")
316
+ end
317
+ it "returns an empty array when no matching attributes is found" do
318
+ docs = @db.where notfound: "not found", something: "something"
319
+ docs.should == []
320
+ end
321
+ end
322
+ after(:each) do
323
+ @db.delete
324
+ end
325
+ end
326
+ describe "config" do
327
+ before(:each) do
328
+ @c = Leanback::Couchdb.new db_settings("")
329
+ end
330
+ it "sets and gets a config setting" do
331
+ @c.set_config("couch_httpd_auth", "timeout", '"1600"').should == true
332
+ @c.get_config("couch_httpd_auth", "timeout").should == "\"1600\"\n"
333
+ end
334
+ it "cannot get a config setting that doesnt exist" do
335
+ expect{ @c.get_config("dont_exist", "dont_exist") }.to raise_error(Leanback::CouchdbException)
336
+ end
337
+ it "deletes a config setting" do
338
+ @c.set_config("section", "option", '"value"').should == true
339
+ @c.delete_config("section", "option").should == true
340
+ end
341
+ it "cannot delete a config setting that don't exist" do
342
+ expect{ @c.delete_config("dont_exist", "dont_exist") }.to raise_error(Leanback::CouchdbException)
343
+ end
344
+ it "config setting's value must be set in correct format" do
345
+ @c.set_config("section", "option", '"value"').should == true
346
+ @c.set_config("section", "option", '"true"').should == true
347
+ @c.set_config("section", "option", '"900"').should == true
348
+ @c.set_config("section", "option", '"value"').should == true
349
+ @c.set_config("section", "option", '"[1]"').should == true
350
+ @c.delete_config("section", "option").should == true
351
+ end
352
+ it "config setting's value cannot be in the wrong format" do
353
+ expect{ @c.set_config("section", "option", "value") }.to raise_error
354
+ end
355
+ end
356
+ end
metadata CHANGED
@@ -1,129 +1,114 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: leanback
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
5
- prerelease:
4
+ version: 0.5.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Obi Akubue
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-11-16 00:00:00.000000000 Z
11
+ date: 2014-06-14 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: rest-client
14
+ name: activesupport
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
- name: yajl-ruby
28
+ name: rest-client
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
- name: shoulda
42
+ name: json_pure
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
- type: :development
48
+ type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
- name: bundler
56
+ name: pry
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
- version: 1.0.0
61
+ version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
- version: 1.0.0
68
+ version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
- name: jeweler
70
+ name: bundler
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ~>
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
- version: 1.5.2
75
+ version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ~>
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
- version: 1.5.2
82
+ version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
- name: rcov
84
+ name: jeweler
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - "~>"
100
88
  - !ruby/object:Gem::Version
101
- version: '0'
89
+ version: 1.8.7
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - "~>"
108
95
  - !ruby/object:Gem::Version
109
- version: '0'
96
+ version: 1.8.7
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: rspec
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
103
  version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - ">="
124
109
  - !ruby/object:Gem::Version
125
110
  version: '0'
126
- description: lightweight Ruby interface to CouchDB
111
+ description: Simple Ruby interface to CouchDB
127
112
  email: obioraakubue@yahoo.com
128
113
  executables: []
129
114
  extensions: []
@@ -131,102 +116,40 @@ extra_rdoc_files:
131
116
  - LICENSE.txt
132
117
  - README.md
133
118
  files:
134
- - .document
135
- - Changelog.rdoc
119
+ - ".document"
120
+ - ".travis.yml"
136
121
  - Gemfile
137
122
  - Gemfile.lock
138
123
  - LICENSE.txt
139
124
  - README.md
140
125
  - Rakefile
141
126
  - VERSION
142
- - documentation/static/2011/11/20/i-moved-leanback-documentation/index.html
143
- - documentation/static/2011/11/20/index.html
144
- - documentation/static/2011/11/index.html
145
- - documentation/static/2011/index.html
146
- - documentation/static/2013/06/02/index.html
147
- - documentation/static/2013/06/02/released-leanback-v0-3-4/index.html
148
- - documentation/static/2013/06/09/index.html
149
- - documentation/static/2013/06/09/released-leanback-v0-4-0/index.html
150
- - documentation/static/2013/06/index.html
151
- - documentation/static/2013/index.html
152
- - documentation/static/author/admin/index.html
153
- - documentation/static/basic-couchdb-operations/index.html
154
- - documentation/static/category/uncategorized/index.html
155
- - documentation/static/couchdb-configuration/index.html
156
- - documentation/static/couchdb-security/index.html
157
- - documentation/static/count-by-multiple-documents/index.html
158
- - documentation/static/count-documents-by-key/index.html
159
- - documentation/static/css/2c-l-fixed.css
160
- - documentation/static/css/2c-l-fixed.dev.css
161
- - documentation/static/css/2c-r-fixed.css
162
- - documentation/static/css/2c-r-fixed.dev.css
163
- - documentation/static/css/3c-c-fixed.css
164
- - documentation/static/css/3c-c-fixed.dev.css
165
- - documentation/static/css/3c-l-fixed.css
166
- - documentation/static/css/3c-l-fixed.dev.css
167
- - documentation/static/css/3c-r-fixed.css
168
- - documentation/static/css/3c-r-fixed.dev.css
169
- - documentation/static/css/holy-grail-fluid.css
170
- - documentation/static/css/plugins.css
171
- - documentation/static/css/print.css
172
- - documentation/static/css/screen.css
173
- - documentation/static/design-documents-and-permanent-views/index.html
174
- - documentation/static/error-handling/index.html
175
- - documentation/static/find-document-by-multiple-keys/index.html
176
- - documentation/static/find-documents-by-key/index.html
177
- - documentation/static/index.html
178
- - documentation/static/leanback/index.html
179
- - documentation/static/leanback/installation/index.html
180
- - documentation/static/setting-the-bind_address-port/index.html
181
- - documentation/static/style.css
182
127
  - leanback.gemspec
183
128
  - lib/leanback.rb
184
- - spec/admin_party/database_spec.rb
185
- - spec/no_admin_party/cloudant_spec.rb
186
- - spec/no_admin_party/database_spec.rb
187
- - spec/no_admin_party/non_admin_user_spec.rb
129
+ - spec/leanback_spec.rb
188
130
  - spec/spec_base.rb
189
- - test/helper.rb
190
- - test/main.rb
191
- - test/my_view.json
192
- - test/my_views.json
193
- - test/start.json
194
- - test/test_leanback.rb
195
- - test/view_age.json
196
131
  homepage: http://github.com/obi-a/leanback
197
132
  licenses:
198
133
  - MIT
134
+ metadata: {}
199
135
  post_install_message:
200
136
  rdoc_options: []
201
137
  require_paths:
202
138
  - lib
203
139
  required_ruby_version: !ruby/object:Gem::Requirement
204
- none: false
205
140
  requirements:
206
- - - ! '>='
141
+ - - ">="
207
142
  - !ruby/object:Gem::Version
208
143
  version: '0'
209
- segments:
210
- - 0
211
- hash: 3937638598034080075
212
144
  required_rubygems_version: !ruby/object:Gem::Requirement
213
- none: false
214
145
  requirements:
215
- - - ! '>='
146
+ - - ">="
216
147
  - !ruby/object:Gem::Version
217
148
  version: '0'
218
149
  requirements: []
219
150
  rubyforge_project:
220
- rubygems_version: 1.8.24
151
+ rubygems_version: 2.2.2
221
152
  signing_key:
222
- specification_version: 3
223
- summary: lightweight Ruby interface to CouchDB
224
- test_files:
225
- - spec/admin_party/database_spec.rb
226
- - spec/no_admin_party/cloudant_spec.rb
227
- - spec/no_admin_party/database_spec.rb
228
- - spec/no_admin_party/non_admin_user_spec.rb
229
- - spec/spec_base.rb
230
- - test/helper.rb
231
- - test/main.rb
232
- - test/test_leanback.rb
153
+ specification_version: 4
154
+ summary: Simple Ruby interface to CouchDB
155
+ test_files: []