money-rails 0.4.0 → 0.5.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.
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ if defined? Mongoid
4
+
5
+ describe Money do
6
+ let(:priceable) { Priceable.create(:price => Money.new(100, 'EUR')) }
7
+
8
+ context "serialize" do
9
+ it "serializes correctly a Money object to a hash of cents and currency" do
10
+ priceable.price.cents.should == 100
11
+ priceable.price.currency.should == Money::Currency.find('EUR')
12
+ end
13
+ end
14
+
15
+ context "deserialize" do
16
+ subject { priceable.price }
17
+ it { should be_an_instance_of(Money) }
18
+ it { should == Money.new(100, 'EUR') }
19
+ it "returns nil if a nil value was stored" do
20
+ nil_priceable = Priceable.create(:price => nil)
21
+ nil_priceable.price.should be_nil
22
+ end
23
+ end
24
+ end
25
+ end
@@ -3,19 +3,15 @@ ENV["RAILS_ENV"] = 'test'
3
3
  # Require dummy Rails app
4
4
  require File.expand_path("../../spec/dummy/config/environment", __FILE__)
5
5
 
6
+ require 'database_cleaner'
6
7
  require 'rspec/rails'
7
8
  require 'rspec/autorun'
8
9
 
9
10
  # Requires supporting ruby files with custom matchers and macros, etc,
10
11
  # in spec/support/ and its subdirectories.
11
- Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
12
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
12
13
 
13
14
  RSpec.configure do |config|
14
- # If you're not using ActiveRecord, or you'd prefer not to run each of your
15
- # examples within a transaction, remove the following line or assign false
16
- # instead of true.
17
- config.use_transactional_fixtures = true
18
-
19
15
  # If true, the base class of anonymous controllers will be inferred
20
16
  # automatically. This will be the default behavior in future versions of
21
17
  # rspec-rails.
@@ -0,0 +1,14 @@
1
+ DatabaseCleaner[:active_record].strategy = :transaction if defined? ActiveRecord
2
+ DatabaseCleaner[:mongoid].strategy = :truncation if defined? Mongoid
3
+
4
+ RSpec.configure do |config|
5
+ config.before :suite do
6
+ DatabaseCleaner.clean_with :truncation
7
+ end
8
+ config.before :each do
9
+ DatabaseCleaner.start
10
+ end
11
+ config.after :each do
12
+ DatabaseCleaner.clean
13
+ end
14
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: money-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,11 +11,11 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-06-22 00:00:00.000000000 Z
14
+ date: 2012-07-22 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: money
18
- requirement: &10552880 !ruby/object:Gem::Requirement
18
+ requirement: !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
@@ -23,10 +23,15 @@ dependencies:
23
23
  version: 5.0.0
24
24
  type: :runtime
25
25
  prerelease: false
26
- version_requirements: *10552880
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - ~>
30
+ - !ruby/object:Gem::Version
31
+ version: 5.0.0
27
32
  - !ruby/object:Gem::Dependency
28
33
  name: activesupport
29
- requirement: &10552340 !ruby/object:Gem::Requirement
34
+ requirement: !ruby/object:Gem::Requirement
30
35
  none: false
31
36
  requirements:
32
37
  - - ~>
@@ -34,10 +39,15 @@ dependencies:
34
39
  version: '3.0'
35
40
  type: :runtime
36
41
  prerelease: false
37
- version_requirements: *10552340
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '3.0'
38
48
  - !ruby/object:Gem::Dependency
39
49
  name: railties
40
- requirement: &10551860 !ruby/object:Gem::Requirement
50
+ requirement: !ruby/object:Gem::Requirement
41
51
  none: false
42
52
  requirements:
43
53
  - - ~>
@@ -45,10 +55,15 @@ dependencies:
45
55
  version: '3.0'
46
56
  type: :runtime
47
57
  prerelease: false
48
- version_requirements: *10551860
58
+ version_requirements: !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ~>
62
+ - !ruby/object:Gem::Version
63
+ version: '3.0'
49
64
  - !ruby/object:Gem::Dependency
50
65
  name: rails
51
- requirement: &10551360 !ruby/object:Gem::Requirement
66
+ requirement: !ruby/object:Gem::Requirement
52
67
  none: false
53
68
  requirements:
54
69
  - - ~>
@@ -56,10 +71,15 @@ dependencies:
56
71
  version: '3.0'
57
72
  type: :development
58
73
  prerelease: false
59
- version_requirements: *10551360
74
+ version_requirements: !ruby/object:Gem::Requirement
75
+ none: false
76
+ requirements:
77
+ - - ~>
78
+ - !ruby/object:Gem::Version
79
+ version: '3.0'
60
80
  - !ruby/object:Gem::Dependency
61
81
  name: rspec
62
- requirement: &10550860 !ruby/object:Gem::Requirement
82
+ requirement: !ruby/object:Gem::Requirement
63
83
  none: false
64
84
  requirements:
65
85
  - - ~>
@@ -67,10 +87,15 @@ dependencies:
67
87
  version: '2.10'
68
88
  type: :development
69
89
  prerelease: false
70
- version_requirements: *10550860
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ none: false
92
+ requirements:
93
+ - - ~>
94
+ - !ruby/object:Gem::Version
95
+ version: '2.10'
71
96
  - !ruby/object:Gem::Dependency
72
97
  name: rspec-rails
73
- requirement: &10550360 !ruby/object:Gem::Requirement
98
+ requirement: !ruby/object:Gem::Requirement
74
99
  none: false
75
100
  requirements:
76
101
  - - ~>
@@ -78,10 +103,15 @@ dependencies:
78
103
  version: '2.10'
79
104
  type: :development
80
105
  prerelease: false
81
- version_requirements: *10550360
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ none: false
108
+ requirements:
109
+ - - ~>
110
+ - !ruby/object:Gem::Version
111
+ version: '2.10'
82
112
  - !ruby/object:Gem::Dependency
83
113
  name: guard-rspec
84
- requirement: &10549880 !ruby/object:Gem::Requirement
114
+ requirement: !ruby/object:Gem::Requirement
85
115
  none: false
86
116
  requirements:
87
117
  - - ~>
@@ -89,7 +119,28 @@ dependencies:
89
119
  version: '1.1'
90
120
  type: :development
91
121
  prerelease: false
92
- version_requirements: *10549880
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ none: false
124
+ requirements:
125
+ - - ~>
126
+ - !ruby/object:Gem::Version
127
+ version: '1.1'
128
+ - !ruby/object:Gem::Dependency
129
+ name: database_cleaner
130
+ requirement: !ruby/object:Gem::Requirement
131
+ none: false
132
+ requirements:
133
+ - - ! '>='
134
+ - !ruby/object:Gem::Version
135
+ version: '0'
136
+ type: :development
137
+ prerelease: false
138
+ version_requirements: !ruby/object:Gem::Requirement
139
+ none: false
140
+ requirements:
141
+ - - ! '>='
142
+ - !ruby/object:Gem::Version
143
+ version: '0'
93
144
  description: This library provides integration of RubyMoney - Money gem with Rails
94
145
  email:
95
146
  - alup.rubymoney@gmail.com
@@ -97,64 +148,70 @@ executables: []
97
148
  extensions: []
98
149
  extra_rdoc_files: []
99
150
  files:
151
+ - lib/money-rails.rb
152
+ - lib/money-rails/railtie.rb
153
+ - lib/money-rails/mongoid/two.rb
100
154
  - lib/money-rails/hooks.rb
101
155
  - lib/money-rails/active_record/monetizable.rb
102
- - lib/money-rails/configuration.rb
103
- - lib/money-rails/version.rb
104
156
  - lib/money-rails/helpers/action_view_extension.rb
105
- - lib/money-rails/railtie.rb
106
- - lib/money-rails.rb
157
+ - lib/money-rails/version.rb
158
+ - lib/money-rails/configuration.rb
107
159
  - lib/generators/money_rails/initializer_generator.rb
108
160
  - lib/generators/templates/money.rb
109
161
  - spec/spec_helper.rb
162
+ - spec/mongoid/two_spec.rb
110
163
  - spec/active_record/monetizable_spec.rb
164
+ - spec/support/database_cleaner.rb
165
+ - spec/helpers/action_view_extension_spec.rb
111
166
  - spec/dummy/script/rails
112
- - spec/dummy/db/migrate/20120528181002_create_transactions.rb
167
+ - spec/dummy/Rakefile
168
+ - spec/dummy/db/structure.sql
169
+ - spec/dummy/db/schema.rb
170
+ - spec/dummy/db/migrate/20120524052716_create_services.rb
113
171
  - spec/dummy/db/migrate/20120402080348_add_bonus_cents_to_product.rb
114
- - spec/dummy/db/migrate/20120607210247_add_column_that_allows_nil.rb
172
+ - spec/dummy/db/migrate/20120712202655_add_sale_price_cents_to_product.rb
115
173
  - spec/dummy/db/migrate/20120528210103_create_dummy_products.rb
174
+ - spec/dummy/db/migrate/20120607210247_add_column_that_allows_nil.rb
175
+ - spec/dummy/db/migrate/20120528181002_create_transactions.rb
116
176
  - spec/dummy/db/migrate/20120331190108_create_products.rb
117
- - spec/dummy/db/migrate/20120524052716_create_services.rb
118
- - spec/dummy/db/structure.sql
119
- - spec/dummy/db/schema.rb
120
177
  - spec/dummy/db/test.sqlite3
121
178
  - spec/dummy/db/development.sqlite3
122
179
  - spec/dummy/README.rdoc
123
- - spec/dummy/Rakefile
124
- - spec/dummy/config/environment.rb
180
+ - spec/dummy/config.ru
181
+ - spec/dummy/log/development.log
182
+ - spec/dummy/log/test.log
183
+ - spec/dummy/app/controllers/application_controller.rb
184
+ - spec/dummy/app/views/layouts/application.html.erb
185
+ - spec/dummy/app/helpers/application_helper.rb
186
+ - spec/dummy/app/models/transaction.rb
187
+ - spec/dummy/app/models/priceable.rb
188
+ - spec/dummy/app/models/service.rb
189
+ - spec/dummy/app/models/product.rb
190
+ - spec/dummy/app/models/dummy_product.rb
191
+ - spec/dummy/app/assets/javascripts/application.js
192
+ - spec/dummy/app/assets/stylesheets/application.css
193
+ - spec/dummy/config/boot.rb
194
+ - spec/dummy/config/routes.rb
125
195
  - spec/dummy/config/locales/en.yml
126
- - spec/dummy/config/initializers/money.rb
196
+ - spec/dummy/config/database.yml
197
+ - spec/dummy/config/application.rb
127
198
  - spec/dummy/config/initializers/mime_types.rb
128
- - spec/dummy/config/initializers/wrap_parameters.rb
129
199
  - spec/dummy/config/initializers/backtrace_silencers.rb
200
+ - spec/dummy/config/initializers/money.rb
130
201
  - spec/dummy/config/initializers/session_store.rb
131
- - spec/dummy/config/initializers/secret_token.rb
132
202
  - spec/dummy/config/initializers/inflections.rb
133
- - spec/dummy/config/boot.rb
134
- - spec/dummy/config/database.yml
135
- - spec/dummy/config/routes.rb
136
- - spec/dummy/config/environments/test.rb
203
+ - spec/dummy/config/initializers/secret_token.rb
204
+ - spec/dummy/config/initializers/wrap_parameters.rb
205
+ - spec/dummy/config/environment.rb
206
+ - spec/dummy/config/mongoid.yml
137
207
  - spec/dummy/config/environments/production.rb
208
+ - spec/dummy/config/environments/test.rb
138
209
  - spec/dummy/config/environments/development.rb
139
- - spec/dummy/config/application.rb
140
- - spec/dummy/app/assets/stylesheets/application.css
141
- - spec/dummy/app/assets/javascripts/application.js
142
- - spec/dummy/app/models/service.rb
143
- - spec/dummy/app/models/product.rb
144
- - spec/dummy/app/models/dummy_product.rb
145
- - spec/dummy/app/models/transaction.rb
146
- - spec/dummy/app/views/layouts/application.html.erb
147
- - spec/dummy/app/helpers/application_helper.rb
148
- - spec/dummy/app/controllers/application_controller.rb
149
- - spec/dummy/log/development.log
150
- - spec/dummy/log/test.log
151
- - spec/dummy/config.ru
152
- - spec/dummy/public/500.html
210
+ - spec/dummy/public/422.html
153
211
  - spec/dummy/public/404.html
154
212
  - spec/dummy/public/favicon.ico
155
- - spec/dummy/public/422.html
213
+ - spec/dummy/public/500.html
156
214
  - spec/configuration_spec.rb
157
- - spec/helpers/action_view_extension_spec.rb
158
215
  - CHANGELOG.md
159
216
  - LICENSE
160
217
  - README.md
@@ -181,58 +238,63 @@ required_rubygems_version: !ruby/object:Gem::Requirement
181
238
  version: '0'
182
239
  requirements: []
183
240
  rubyforge_project:
184
- rubygems_version: 1.8.11
241
+ rubygems_version: 1.8.21
185
242
  signing_key:
186
243
  specification_version: 3
187
244
  summary: Money gem integration with Rails
188
245
  test_files:
189
246
  - spec/spec_helper.rb
247
+ - spec/mongoid/two_spec.rb
190
248
  - spec/active_record/monetizable_spec.rb
249
+ - spec/support/database_cleaner.rb
250
+ - spec/helpers/action_view_extension_spec.rb
191
251
  - spec/dummy/script/rails
192
- - spec/dummy/db/migrate/20120528181002_create_transactions.rb
252
+ - spec/dummy/Rakefile
253
+ - spec/dummy/db/structure.sql
254
+ - spec/dummy/db/schema.rb
255
+ - spec/dummy/db/migrate/20120524052716_create_services.rb
193
256
  - spec/dummy/db/migrate/20120402080348_add_bonus_cents_to_product.rb
194
- - spec/dummy/db/migrate/20120607210247_add_column_that_allows_nil.rb
257
+ - spec/dummy/db/migrate/20120712202655_add_sale_price_cents_to_product.rb
195
258
  - spec/dummy/db/migrate/20120528210103_create_dummy_products.rb
259
+ - spec/dummy/db/migrate/20120607210247_add_column_that_allows_nil.rb
260
+ - spec/dummy/db/migrate/20120528181002_create_transactions.rb
196
261
  - spec/dummy/db/migrate/20120331190108_create_products.rb
197
- - spec/dummy/db/migrate/20120524052716_create_services.rb
198
- - spec/dummy/db/structure.sql
199
- - spec/dummy/db/schema.rb
200
262
  - spec/dummy/db/test.sqlite3
201
263
  - spec/dummy/db/development.sqlite3
202
264
  - spec/dummy/README.rdoc
203
- - spec/dummy/Rakefile
204
- - spec/dummy/config/environment.rb
265
+ - spec/dummy/config.ru
266
+ - spec/dummy/log/development.log
267
+ - spec/dummy/log/test.log
268
+ - spec/dummy/app/controllers/application_controller.rb
269
+ - spec/dummy/app/views/layouts/application.html.erb
270
+ - spec/dummy/app/helpers/application_helper.rb
271
+ - spec/dummy/app/models/transaction.rb
272
+ - spec/dummy/app/models/priceable.rb
273
+ - spec/dummy/app/models/service.rb
274
+ - spec/dummy/app/models/product.rb
275
+ - spec/dummy/app/models/dummy_product.rb
276
+ - spec/dummy/app/assets/javascripts/application.js
277
+ - spec/dummy/app/assets/stylesheets/application.css
278
+ - spec/dummy/config/boot.rb
279
+ - spec/dummy/config/routes.rb
205
280
  - spec/dummy/config/locales/en.yml
206
- - spec/dummy/config/initializers/money.rb
281
+ - spec/dummy/config/database.yml
282
+ - spec/dummy/config/application.rb
207
283
  - spec/dummy/config/initializers/mime_types.rb
208
- - spec/dummy/config/initializers/wrap_parameters.rb
209
284
  - spec/dummy/config/initializers/backtrace_silencers.rb
285
+ - spec/dummy/config/initializers/money.rb
210
286
  - spec/dummy/config/initializers/session_store.rb
211
- - spec/dummy/config/initializers/secret_token.rb
212
287
  - spec/dummy/config/initializers/inflections.rb
213
- - spec/dummy/config/boot.rb
214
- - spec/dummy/config/database.yml
215
- - spec/dummy/config/routes.rb
216
- - spec/dummy/config/environments/test.rb
288
+ - spec/dummy/config/initializers/secret_token.rb
289
+ - spec/dummy/config/initializers/wrap_parameters.rb
290
+ - spec/dummy/config/environment.rb
291
+ - spec/dummy/config/mongoid.yml
217
292
  - spec/dummy/config/environments/production.rb
293
+ - spec/dummy/config/environments/test.rb
218
294
  - spec/dummy/config/environments/development.rb
219
- - spec/dummy/config/application.rb
220
- - spec/dummy/app/assets/stylesheets/application.css
221
- - spec/dummy/app/assets/javascripts/application.js
222
- - spec/dummy/app/models/service.rb
223
- - spec/dummy/app/models/product.rb
224
- - spec/dummy/app/models/dummy_product.rb
225
- - spec/dummy/app/models/transaction.rb
226
- - spec/dummy/app/views/layouts/application.html.erb
227
- - spec/dummy/app/helpers/application_helper.rb
228
- - spec/dummy/app/controllers/application_controller.rb
229
- - spec/dummy/log/development.log
230
- - spec/dummy/log/test.log
231
- - spec/dummy/config.ru
232
- - spec/dummy/public/500.html
295
+ - spec/dummy/public/422.html
233
296
  - spec/dummy/public/404.html
234
297
  - spec/dummy/public/favicon.ico
235
- - spec/dummy/public/422.html
298
+ - spec/dummy/public/500.html
236
299
  - spec/configuration_spec.rb
237
- - spec/helpers/action_view_extension_spec.rb
238
300
  has_rdoc: