samlown-couchrest 0.35

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. data/LICENSE +176 -0
  2. data/README.md +46 -0
  3. data/Rakefile +67 -0
  4. data/THANKS.md +19 -0
  5. data/examples/model/example.rb +144 -0
  6. data/examples/word_count/markov +38 -0
  7. data/examples/word_count/views/books/chunked-map.js +3 -0
  8. data/examples/word_count/views/books/united-map.js +1 -0
  9. data/examples/word_count/views/markov/chain-map.js +6 -0
  10. data/examples/word_count/views/markov/chain-reduce.js +7 -0
  11. data/examples/word_count/views/word_count/count-map.js +6 -0
  12. data/examples/word_count/views/word_count/count-reduce.js +3 -0
  13. data/examples/word_count/word_count.rb +46 -0
  14. data/examples/word_count/word_count_query.rb +40 -0
  15. data/examples/word_count/word_count_views.rb +26 -0
  16. data/history.txt +114 -0
  17. data/lib/couchrest/commands/generate.rb +71 -0
  18. data/lib/couchrest/commands/push.rb +103 -0
  19. data/lib/couchrest/core/adapters/restclient.rb +35 -0
  20. data/lib/couchrest/core/database.rb +377 -0
  21. data/lib/couchrest/core/design.rb +79 -0
  22. data/lib/couchrest/core/document.rb +84 -0
  23. data/lib/couchrest/core/http_abstraction.rb +48 -0
  24. data/lib/couchrest/core/response.rb +16 -0
  25. data/lib/couchrest/core/rest_api.rb +49 -0
  26. data/lib/couchrest/core/server.rb +88 -0
  27. data/lib/couchrest/core/view.rb +4 -0
  28. data/lib/couchrest/helper/pager.rb +103 -0
  29. data/lib/couchrest/helper/streamer.rb +51 -0
  30. data/lib/couchrest/helper/upgrade.rb +51 -0
  31. data/lib/couchrest/middlewares/logger.rb +263 -0
  32. data/lib/couchrest/mixins/attachments.rb +31 -0
  33. data/lib/couchrest/mixins/attribute_protection.rb +74 -0
  34. data/lib/couchrest/mixins/callbacks.rb +532 -0
  35. data/lib/couchrest/mixins/class_proxy.rb +124 -0
  36. data/lib/couchrest/mixins/collection.rb +260 -0
  37. data/lib/couchrest/mixins/design_doc.rb +103 -0
  38. data/lib/couchrest/mixins/document_queries.rb +80 -0
  39. data/lib/couchrest/mixins/extended_attachments.rb +70 -0
  40. data/lib/couchrest/mixins/extended_document_mixins.rb +9 -0
  41. data/lib/couchrest/mixins/properties.rb +154 -0
  42. data/lib/couchrest/mixins/validation.rb +246 -0
  43. data/lib/couchrest/mixins/views.rb +173 -0
  44. data/lib/couchrest/mixins.rb +4 -0
  45. data/lib/couchrest/monkeypatches.rb +113 -0
  46. data/lib/couchrest/more/casted_model.rb +58 -0
  47. data/lib/couchrest/more/extended_document.rb +310 -0
  48. data/lib/couchrest/more/property.rb +50 -0
  49. data/lib/couchrest/more/typecast.rb +175 -0
  50. data/lib/couchrest/support/blank.rb +42 -0
  51. data/lib/couchrest/support/class.rb +190 -0
  52. data/lib/couchrest/support/rails.rb +42 -0
  53. data/lib/couchrest/validation/auto_validate.rb +157 -0
  54. data/lib/couchrest/validation/contextual_validators.rb +78 -0
  55. data/lib/couchrest/validation/validation_errors.rb +125 -0
  56. data/lib/couchrest/validation/validators/absent_field_validator.rb +74 -0
  57. data/lib/couchrest/validation/validators/confirmation_validator.rb +107 -0
  58. data/lib/couchrest/validation/validators/format_validator.rb +122 -0
  59. data/lib/couchrest/validation/validators/formats/email.rb +66 -0
  60. data/lib/couchrest/validation/validators/formats/url.rb +43 -0
  61. data/lib/couchrest/validation/validators/generic_validator.rb +120 -0
  62. data/lib/couchrest/validation/validators/length_validator.rb +139 -0
  63. data/lib/couchrest/validation/validators/method_validator.rb +89 -0
  64. data/lib/couchrest/validation/validators/numeric_validator.rb +109 -0
  65. data/lib/couchrest/validation/validators/required_field_validator.rb +114 -0
  66. data/lib/couchrest.rb +162 -0
  67. data/spec/couchrest/core/couchrest_spec.rb +184 -0
  68. data/spec/couchrest/core/database_spec.rb +840 -0
  69. data/spec/couchrest/core/design_spec.rb +138 -0
  70. data/spec/couchrest/core/document_spec.rb +275 -0
  71. data/spec/couchrest/core/server_spec.rb +35 -0
  72. data/spec/couchrest/helpers/pager_spec.rb +122 -0
  73. data/spec/couchrest/helpers/streamer_spec.rb +52 -0
  74. data/spec/couchrest/more/attribute_protection_spec.rb +150 -0
  75. data/spec/couchrest/more/casted_extended_doc_spec.rb +79 -0
  76. data/spec/couchrest/more/casted_model_spec.rb +406 -0
  77. data/spec/couchrest/more/extended_doc_attachment_spec.rb +135 -0
  78. data/spec/couchrest/more/extended_doc_inherited_spec.rb +40 -0
  79. data/spec/couchrest/more/extended_doc_spec.rb +797 -0
  80. data/spec/couchrest/more/extended_doc_subclass_spec.rb +98 -0
  81. data/spec/couchrest/more/extended_doc_view_spec.rb +456 -0
  82. data/spec/couchrest/more/property_spec.rb +628 -0
  83. data/spec/fixtures/attachments/README +3 -0
  84. data/spec/fixtures/attachments/couchdb.png +0 -0
  85. data/spec/fixtures/attachments/test.html +11 -0
  86. data/spec/fixtures/more/article.rb +35 -0
  87. data/spec/fixtures/more/card.rb +22 -0
  88. data/spec/fixtures/more/cat.rb +20 -0
  89. data/spec/fixtures/more/course.rb +22 -0
  90. data/spec/fixtures/more/event.rb +8 -0
  91. data/spec/fixtures/more/invoice.rb +17 -0
  92. data/spec/fixtures/more/person.rb +9 -0
  93. data/spec/fixtures/more/question.rb +6 -0
  94. data/spec/fixtures/more/service.rb +12 -0
  95. data/spec/fixtures/more/user.rb +22 -0
  96. data/spec/fixtures/views/lib.js +3 -0
  97. data/spec/fixtures/views/test_view/lib.js +3 -0
  98. data/spec/fixtures/views/test_view/only-map.js +4 -0
  99. data/spec/fixtures/views/test_view/test-map.js +3 -0
  100. data/spec/fixtures/views/test_view/test-reduce.js +3 -0
  101. data/spec/spec.opts +6 -0
  102. data/spec/spec_helper.rb +49 -0
  103. data/utils/remap.rb +27 -0
  104. data/utils/subset.rb +30 -0
  105. metadata +223 -0
@@ -0,0 +1,20 @@
1
+ class Cat < CouchRest::ExtendedDocument
2
+ include ::CouchRest::Validation
3
+
4
+ # Set the default database to use
5
+ use_database DB
6
+
7
+ property :name, :accessible => true
8
+ property :toys, :cast_as => ['CatToy'], :default => [], :accessible => true
9
+ property :favorite_toy, :cast_as => 'CatToy', :accessible => true
10
+ property :number
11
+ end
12
+
13
+ class CatToy < Hash
14
+ include ::CouchRest::CastedModel
15
+ include ::CouchRest::Validation
16
+
17
+ property :name
18
+
19
+ validates_presence_of :name
20
+ end
@@ -0,0 +1,22 @@
1
+ require File.join(FIXTURE_PATH, 'more', 'question')
2
+ require File.join(FIXTURE_PATH, 'more', 'person')
3
+
4
+ class Course < CouchRest::ExtendedDocument
5
+ use_database TEST_SERVER.default_database
6
+
7
+ property :title, :cast_as => 'String'
8
+ property :questions, :cast_as => ['Question']
9
+ property :professor, :cast_as => 'Person'
10
+ property :participants, :type => ['Object']
11
+ property :ends_at, :type => 'Time'
12
+ property :estimate, :type => 'Float'
13
+ property :hours, :type => 'Integer'
14
+ property :profit, :type => 'BigDecimal'
15
+ property :started_on, :type => 'Date'
16
+ property :updated_at, :type => 'DateTime'
17
+ property :active, :type => 'Boolean'
18
+ property :klass, :type => 'Class'
19
+
20
+ view_by :title
21
+ view_by :dept, :ducktype => true
22
+ end
@@ -0,0 +1,8 @@
1
+ class Event < CouchRest::ExtendedDocument
2
+ use_database DB
3
+
4
+ property :subject
5
+ property :occurs_at, :cast_as => 'Time', :init_method => 'parse'
6
+ property :end_date, :cast_as => 'Date', :init_method => 'parse'
7
+
8
+ end
@@ -0,0 +1,17 @@
1
+ class Invoice < CouchRest::ExtendedDocument
2
+ # Include the validation module to get access to the validation methods
3
+ include CouchRest::Validation
4
+
5
+ # Set the default database to use
6
+ use_database DB
7
+
8
+ # Official Schema
9
+ property :client_name
10
+ property :employee_name
11
+ property :location
12
+
13
+ # Validation
14
+ validates_presence_of :client_name, :employee_name
15
+ validates_presence_of :location, :message => "Hey stupid!, you forgot the location"
16
+
17
+ end
@@ -0,0 +1,9 @@
1
+ class Person < Hash
2
+ include ::CouchRest::CastedModel
3
+ property :pet, :cast_as => 'Cat'
4
+ property :name, :type => ['String']
5
+
6
+ def last_name
7
+ name.last
8
+ end
9
+ end
@@ -0,0 +1,6 @@
1
+ class Question < Hash
2
+ include ::CouchRest::CastedModel
3
+
4
+ property :q
5
+ property :a, :type => 'Object'
6
+ end
@@ -0,0 +1,12 @@
1
+ class Service < CouchRest::ExtendedDocument
2
+ # Include the validation module to get access to the validation methods
3
+ include CouchRest::Validation
4
+ auto_validate!
5
+ # Set the default database to use
6
+ use_database DB
7
+
8
+ # Official Schema
9
+ property :name, :length => 4...20
10
+ property :price, :type => 'Integer'
11
+
12
+ end
@@ -0,0 +1,22 @@
1
+ class User < CouchRest::ExtendedDocument
2
+ # Set the default database to use
3
+ use_database DB
4
+ property :name, :accessible => true
5
+ property :admin # this will be automatically protected
6
+ end
7
+
8
+ class SpecialUser < CouchRest::ExtendedDocument
9
+ # Set the default database to use
10
+ use_database DB
11
+ property :name # this will not be protected
12
+ property :admin, :protected => true
13
+ end
14
+
15
+ # There are two modes of protection
16
+ # 1) Declare accessible poperties, assume all the rest are protected
17
+ # property :name, :accessible => true
18
+ # property :admin # this will be automatically protected
19
+ #
20
+ # 2) Declare protected properties, assume all the rest are accessible
21
+ # property :name # this will not be protected
22
+ # property :admin, :protected => true
@@ -0,0 +1,3 @@
1
+ function globalLib() {
2
+ return "fixture";
3
+ };
@@ -0,0 +1,3 @@
1
+ function justThisView() {
2
+ return "fixture";
3
+ };
@@ -0,0 +1,4 @@
1
+ function(doc) {
2
+ //include-lib
3
+ emit(null, null);
4
+ };
@@ -0,0 +1,3 @@
1
+ function(doc) {
2
+ emit(null, null);
3
+ };
@@ -0,0 +1,3 @@
1
+ function(ks,vs,co) {
2
+ return vs.length;
3
+ };
data/spec/spec.opts ADDED
@@ -0,0 +1,6 @@
1
+ --colour
2
+ --format
3
+ progress
4
+ --loadby
5
+ mtime
6
+ --reverse
@@ -0,0 +1,49 @@
1
+ require "rubygems"
2
+ require "spec" # Satisfies Autotest and anyone else not using the Rake tasks
3
+
4
+ require File.join(File.dirname(__FILE__), '..','lib','couchrest')
5
+ # check the following file to see how to use the spec'd features.
6
+
7
+ unless defined?(FIXTURE_PATH)
8
+ FIXTURE_PATH = File.join(File.dirname(__FILE__), '/fixtures')
9
+ SCRATCH_PATH = File.join(File.dirname(__FILE__), '/tmp')
10
+
11
+ COUCHHOST = "http://127.0.0.1:5984"
12
+ TESTDB = 'couchrest-test'
13
+ REPLICATIONDB = 'couchrest-test-replication'
14
+ TEST_SERVER = CouchRest.new
15
+ TEST_SERVER.default_database = TESTDB
16
+ DB = TEST_SERVER.database(TESTDB)
17
+ end
18
+
19
+ class Basic < CouchRest::ExtendedDocument
20
+ use_database TEST_SERVER.default_database
21
+ end
22
+
23
+ def reset_test_db!
24
+ DB.recreate! rescue nil
25
+ DB
26
+ end
27
+
28
+ Spec::Runner.configure do |config|
29
+ config.before(:all) { reset_test_db! }
30
+
31
+ config.after(:all) do
32
+ cr = TEST_SERVER
33
+ test_dbs = cr.databases.select { |db| db =~ /^#{TESTDB}/ }
34
+ test_dbs.each do |db|
35
+ cr.database(db).delete! rescue nil
36
+ end
37
+ end
38
+ end
39
+
40
+ def couchdb_lucene_available?
41
+ lucene_path = "http://localhost:5985/"
42
+ url = URI.parse(lucene_path)
43
+ req = Net::HTTP::Get.new(url.path)
44
+ res = Net::HTTP.new(url.host, url.port).start { |http| http.request(req) }
45
+ true
46
+ rescue Exception => e
47
+ false
48
+ end
49
+
data/utils/remap.rb ADDED
@@ -0,0 +1,27 @@
1
+ require 'rubygems'
2
+ require 'couchrest'
3
+
4
+ # set the source db and map view
5
+ source = CouchRest.new("http://127.0.0.1:5984").database('source-db')
6
+ source_view = 'mydesign/view-map'
7
+
8
+ # set the target db
9
+ target = CouchRest.new("http://127.0.0.1:5984").database('target-db')
10
+
11
+
12
+ pager = CouchRest::Pager.new(source)
13
+
14
+ # pager will yield once per uniq key in the source view
15
+
16
+ pager.key_reduce(source_view, 10000) do |key, values|
17
+ # create a doc from the key and the values
18
+ example_doc = {
19
+ :key => key,
20
+ :values => values.uniq
21
+ }
22
+
23
+ target.save(example_doc)
24
+
25
+ # keep us up to date with progress
26
+ puts k if (rand > 0.9)
27
+ end
data/utils/subset.rb ADDED
@@ -0,0 +1,30 @@
1
+ require 'rubygems'
2
+ require 'couchrest'
3
+
4
+ # subset.rb replicates a percentage of a database to a fresh database.
5
+ # use it to create a smaller dataset on which to prototype views.
6
+
7
+ # specify the source database
8
+ source = CouchRest.new("http://127.0.0.1:5984").database('source-db')
9
+
10
+ # specify the target database
11
+ target = CouchRest.new("http://127.0.0.1:5984").database('target-db')
12
+
13
+ # pager efficiently yields all view rows
14
+ pager = CouchRest::Pager.new(source)
15
+
16
+ pager.all_docs(1000) do |rows|
17
+ docs = rows.collect do |r|
18
+ # the percentage of docs to clone
19
+ next if rand > 0.1
20
+ doc = source.get(r['id'])
21
+ doc.delete('_rev')
22
+ doc
23
+ end.compact
24
+ puts docs.length
25
+ next if docs.empty?
26
+
27
+ puts docs.first['_id']
28
+ target.bulk_save(docs)
29
+ end
30
+
metadata ADDED
@@ -0,0 +1,223 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: samlown-couchrest
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 35
8
+ version: "0.35"
9
+ platform: ruby
10
+ authors:
11
+ - J. Chris Anderson
12
+ - Matt Aimonetti
13
+ - Marcos Tapajos
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2010-03-30 00:00:00 +00:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: rest-client
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
30
+ - 5
31
+ version: "0.5"
32
+ type: :runtime
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: mime-types
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ segments:
42
+ - 1
43
+ - 15
44
+ version: "1.15"
45
+ type: :runtime
46
+ version_requirements: *id002
47
+ description: CouchRest provides a simple interface on top of CouchDB's RESTful HTTP API, as well as including some utility scripts for managing views and attachments.
48
+ email: jchris@apache.org
49
+ executables: []
50
+
51
+ extensions: []
52
+
53
+ extra_rdoc_files:
54
+ - LICENSE
55
+ - README.md
56
+ - THANKS.md
57
+ files:
58
+ - LICENSE
59
+ - README.md
60
+ - Rakefile
61
+ - THANKS.md
62
+ - examples/model/example.rb
63
+ - examples/word_count/markov
64
+ - examples/word_count/views/books/chunked-map.js
65
+ - examples/word_count/views/books/united-map.js
66
+ - examples/word_count/views/markov/chain-map.js
67
+ - examples/word_count/views/markov/chain-reduce.js
68
+ - examples/word_count/views/word_count/count-map.js
69
+ - examples/word_count/views/word_count/count-reduce.js
70
+ - examples/word_count/word_count.rb
71
+ - examples/word_count/word_count_query.rb
72
+ - examples/word_count/word_count_views.rb
73
+ - history.txt
74
+ - lib/couchrest.rb
75
+ - lib/couchrest/commands/generate.rb
76
+ - lib/couchrest/commands/push.rb
77
+ - lib/couchrest/core/adapters/restclient.rb
78
+ - lib/couchrest/core/database.rb
79
+ - lib/couchrest/core/design.rb
80
+ - lib/couchrest/core/document.rb
81
+ - lib/couchrest/core/http_abstraction.rb
82
+ - lib/couchrest/core/response.rb
83
+ - lib/couchrest/core/rest_api.rb
84
+ - lib/couchrest/core/server.rb
85
+ - lib/couchrest/core/view.rb
86
+ - lib/couchrest/helper/pager.rb
87
+ - lib/couchrest/helper/streamer.rb
88
+ - lib/couchrest/helper/upgrade.rb
89
+ - lib/couchrest/middlewares/logger.rb
90
+ - lib/couchrest/mixins.rb
91
+ - lib/couchrest/mixins/attachments.rb
92
+ - lib/couchrest/mixins/attribute_protection.rb
93
+ - lib/couchrest/mixins/callbacks.rb
94
+ - lib/couchrest/mixins/class_proxy.rb
95
+ - lib/couchrest/mixins/collection.rb
96
+ - lib/couchrest/mixins/design_doc.rb
97
+ - lib/couchrest/mixins/document_queries.rb
98
+ - lib/couchrest/mixins/extended_attachments.rb
99
+ - lib/couchrest/mixins/extended_document_mixins.rb
100
+ - lib/couchrest/mixins/properties.rb
101
+ - lib/couchrest/mixins/validation.rb
102
+ - lib/couchrest/mixins/views.rb
103
+ - lib/couchrest/monkeypatches.rb
104
+ - lib/couchrest/more/casted_model.rb
105
+ - lib/couchrest/more/extended_document.rb
106
+ - lib/couchrest/more/property.rb
107
+ - lib/couchrest/more/typecast.rb
108
+ - lib/couchrest/support/blank.rb
109
+ - lib/couchrest/support/class.rb
110
+ - lib/couchrest/support/rails.rb
111
+ - lib/couchrest/validation/auto_validate.rb
112
+ - lib/couchrest/validation/contextual_validators.rb
113
+ - lib/couchrest/validation/validation_errors.rb
114
+ - lib/couchrest/validation/validators/absent_field_validator.rb
115
+ - lib/couchrest/validation/validators/confirmation_validator.rb
116
+ - lib/couchrest/validation/validators/format_validator.rb
117
+ - lib/couchrest/validation/validators/formats/email.rb
118
+ - lib/couchrest/validation/validators/formats/url.rb
119
+ - lib/couchrest/validation/validators/generic_validator.rb
120
+ - lib/couchrest/validation/validators/length_validator.rb
121
+ - lib/couchrest/validation/validators/method_validator.rb
122
+ - lib/couchrest/validation/validators/numeric_validator.rb
123
+ - lib/couchrest/validation/validators/required_field_validator.rb
124
+ - spec/couchrest/core/couchrest_spec.rb
125
+ - spec/couchrest/core/database_spec.rb
126
+ - spec/couchrest/core/design_spec.rb
127
+ - spec/couchrest/core/document_spec.rb
128
+ - spec/couchrest/core/server_spec.rb
129
+ - spec/couchrest/helpers/pager_spec.rb
130
+ - spec/couchrest/helpers/streamer_spec.rb
131
+ - spec/couchrest/more/attribute_protection_spec.rb
132
+ - spec/couchrest/more/casted_extended_doc_spec.rb
133
+ - spec/couchrest/more/casted_model_spec.rb
134
+ - spec/couchrest/more/extended_doc_attachment_spec.rb
135
+ - spec/couchrest/more/extended_doc_inherited_spec.rb
136
+ - spec/couchrest/more/extended_doc_spec.rb
137
+ - spec/couchrest/more/extended_doc_subclass_spec.rb
138
+ - spec/couchrest/more/extended_doc_view_spec.rb
139
+ - spec/couchrest/more/property_spec.rb
140
+ - spec/fixtures/attachments/README
141
+ - spec/fixtures/attachments/couchdb.png
142
+ - spec/fixtures/attachments/test.html
143
+ - spec/fixtures/more/article.rb
144
+ - spec/fixtures/more/card.rb
145
+ - spec/fixtures/more/cat.rb
146
+ - spec/fixtures/more/course.rb
147
+ - spec/fixtures/more/event.rb
148
+ - spec/fixtures/more/invoice.rb
149
+ - spec/fixtures/more/person.rb
150
+ - spec/fixtures/more/question.rb
151
+ - spec/fixtures/more/service.rb
152
+ - spec/fixtures/more/user.rb
153
+ - spec/fixtures/views/lib.js
154
+ - spec/fixtures/views/test_view/lib.js
155
+ - spec/fixtures/views/test_view/only-map.js
156
+ - spec/fixtures/views/test_view/test-map.js
157
+ - spec/fixtures/views/test_view/test-reduce.js
158
+ - spec/spec.opts
159
+ - spec/spec_helper.rb
160
+ - utils/remap.rb
161
+ - utils/subset.rb
162
+ has_rdoc: true
163
+ homepage: http://github.com/couchrest/couchrest
164
+ licenses: []
165
+
166
+ post_install_message:
167
+ rdoc_options:
168
+ - --charset=UTF-8
169
+ require_paths:
170
+ - lib
171
+ required_ruby_version: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ segments:
176
+ - 0
177
+ version: "0"
178
+ required_rubygems_version: !ruby/object:Gem::Requirement
179
+ requirements:
180
+ - - ">="
181
+ - !ruby/object:Gem::Version
182
+ segments:
183
+ - 0
184
+ version: "0"
185
+ requirements: []
186
+
187
+ rubyforge_project:
188
+ rubygems_version: 1.3.6
189
+ signing_key:
190
+ specification_version: 3
191
+ summary: Lean and RESTful interface to CouchDB.
192
+ test_files:
193
+ - spec/couchrest/more/extended_doc_attachment_spec.rb
194
+ - spec/couchrest/more/casted_extended_doc_spec.rb
195
+ - spec/couchrest/more/extended_doc_inherited_spec.rb
196
+ - spec/couchrest/more/casted_model_spec.rb
197
+ - spec/couchrest/more/extended_doc_view_spec.rb
198
+ - spec/couchrest/more/extended_doc_spec.rb
199
+ - spec/couchrest/more/property_spec.rb
200
+ - spec/couchrest/more/attribute_protection_spec.rb
201
+ - spec/couchrest/more/extended_doc_subclass_spec.rb
202
+ - spec/couchrest/helpers/streamer_spec.rb
203
+ - spec/couchrest/helpers/pager_spec.rb
204
+ - spec/couchrest/core/design_spec.rb
205
+ - spec/couchrest/core/server_spec.rb
206
+ - spec/couchrest/core/couchrest_spec.rb
207
+ - spec/couchrest/core/database_spec.rb
208
+ - spec/couchrest/core/document_spec.rb
209
+ - spec/fixtures/more/person.rb
210
+ - spec/fixtures/more/cat.rb
211
+ - spec/fixtures/more/card.rb
212
+ - spec/fixtures/more/course.rb
213
+ - spec/fixtures/more/service.rb
214
+ - spec/fixtures/more/article.rb
215
+ - spec/fixtures/more/invoice.rb
216
+ - spec/fixtures/more/user.rb
217
+ - spec/fixtures/more/event.rb
218
+ - spec/fixtures/more/question.rb
219
+ - spec/spec_helper.rb
220
+ - examples/word_count/word_count_views.rb
221
+ - examples/word_count/word_count.rb
222
+ - examples/word_count/word_count_query.rb
223
+ - examples/model/example.rb