acts_as_price 0.2.2 → 0.2.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.
data/Gemfile CHANGED
@@ -1,13 +1,13 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
3
  gem 'rails', '3.0.7'
4
+ gem 'rake', '0.8.7'
4
5
 
5
6
  #only use in test envirnoment
6
7
  group :test do
7
8
  gem 'rspec-rails'
8
9
  gem 'shoulda-matchers'
9
10
  gem 'autotest'
10
- gem 'autotest-growl'
11
11
  gem 'rcov'
12
12
  gem 'metrical'
13
13
  gem 'activerecord-nulldb-adapter'
@@ -0,0 +1,166 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ Saikuro (1.1.0)
5
+ ZenTest (4.5.0)
6
+ abstract (1.0.0)
7
+ actionmailer (3.0.7)
8
+ actionpack (= 3.0.7)
9
+ mail (~> 2.2.15)
10
+ actionpack (3.0.7)
11
+ activemodel (= 3.0.7)
12
+ activesupport (= 3.0.7)
13
+ builder (~> 2.1.2)
14
+ erubis (~> 2.6.6)
15
+ i18n (~> 0.5.0)
16
+ rack (~> 1.2.1)
17
+ rack-mount (~> 0.6.14)
18
+ rack-test (~> 0.5.7)
19
+ tzinfo (~> 0.3.23)
20
+ activemodel (3.0.7)
21
+ activesupport (= 3.0.7)
22
+ builder (~> 2.1.2)
23
+ i18n (~> 0.5.0)
24
+ activerecord (3.0.7)
25
+ activemodel (= 3.0.7)
26
+ activesupport (= 3.0.7)
27
+ arel (~> 2.0.2)
28
+ tzinfo (~> 0.3.23)
29
+ activerecord-nulldb-adapter (0.2.1)
30
+ activerecord (>= 2.0.0, < 3.1)
31
+ activeresource (3.0.7)
32
+ activemodel (= 3.0.7)
33
+ activesupport (= 3.0.7)
34
+ activesupport (3.0.7)
35
+ arel (2.0.10)
36
+ arrayfields (4.7.4)
37
+ autotest (4.4.6)
38
+ ZenTest (>= 4.4.1)
39
+ builder (2.1.2)
40
+ chronic (0.3.0)
41
+ churn (0.0.13)
42
+ chronic (>= 0.2.3)
43
+ hirb
44
+ json_pure
45
+ main
46
+ ruby_parser (~> 2.0.4)
47
+ sexp_processor (~> 3.0.3)
48
+ colored (1.2)
49
+ diff-lcs (1.1.2)
50
+ erubis (2.6.6)
51
+ abstract (>= 1.0.0)
52
+ fattr (2.2.0)
53
+ flay (1.4.2)
54
+ ruby_parser (~> 2.0)
55
+ sexp_processor (~> 3.0)
56
+ flog (2.5.1)
57
+ ruby_parser (~> 2.0)
58
+ sexp_processor (~> 3.0)
59
+ git (1.2.5)
60
+ haml (3.1.1)
61
+ hirb (0.4.5)
62
+ i18n (0.5.0)
63
+ jeweler (1.5.2)
64
+ bundler (~> 1.0.0)
65
+ git (>= 1.2.5)
66
+ rake
67
+ json_pure (1.5.1)
68
+ mail (2.2.19)
69
+ activesupport (>= 2.3.6)
70
+ i18n (>= 0.4.0)
71
+ mime-types (~> 1.16)
72
+ treetop (~> 1.4.8)
73
+ main (4.4.0)
74
+ arrayfields (>= 4.7.4)
75
+ fattr (>= 2.1.0)
76
+ metric_fu (2.1.1)
77
+ Saikuro (>= 1.1.0)
78
+ activesupport (>= 2.0.0)
79
+ chronic (~> 0.3.0)
80
+ churn (>= 0.0.7)
81
+ flay (>= 1.2.1)
82
+ flog (>= 2.3.0)
83
+ rails_best_practices (>= 0.6.4)
84
+ rcov (>= 0.8.3.3)
85
+ reek (>= 1.2.6)
86
+ roodi (>= 2.1.0)
87
+ syntax
88
+ metrical (0.0.5)
89
+ activesupport
90
+ metric_fu (~> 2.1.1)
91
+ mime-types (1.16)
92
+ polyglot (0.3.1)
93
+ rack (1.2.3)
94
+ rack-mount (0.6.14)
95
+ rack (>= 1.0.0)
96
+ rack-test (0.5.7)
97
+ rack (>= 1.0)
98
+ rails (3.0.7)
99
+ actionmailer (= 3.0.7)
100
+ actionpack (= 3.0.7)
101
+ activerecord (= 3.0.7)
102
+ activeresource (= 3.0.7)
103
+ activesupport (= 3.0.7)
104
+ bundler (~> 1.0)
105
+ railties (= 3.0.7)
106
+ rails_best_practices (0.9.0)
107
+ activesupport
108
+ colored
109
+ erubis
110
+ haml
111
+ i18n
112
+ ruby-progressbar
113
+ ruby_parser
114
+ railties (3.0.7)
115
+ actionpack (= 3.0.7)
116
+ activesupport (= 3.0.7)
117
+ rake (>= 0.8.7)
118
+ thor (~> 0.14.4)
119
+ rake (0.8.7)
120
+ rcov (0.9.9)
121
+ reek (1.2.8)
122
+ ruby2ruby (~> 1.2)
123
+ ruby_parser (~> 2.0)
124
+ sexp_processor (~> 3.0)
125
+ roodi (2.1.0)
126
+ ruby_parser
127
+ rspec (2.6.0)
128
+ rspec-core (~> 2.6.0)
129
+ rspec-expectations (~> 2.6.0)
130
+ rspec-mocks (~> 2.6.0)
131
+ rspec-core (2.6.3)
132
+ rspec-expectations (2.6.0)
133
+ diff-lcs (~> 1.1.2)
134
+ rspec-mocks (2.6.0)
135
+ rspec-rails (2.6.1)
136
+ actionpack (~> 3.0)
137
+ activesupport (~> 3.0)
138
+ railties (~> 3.0)
139
+ rspec (~> 2.6.0)
140
+ ruby-progressbar (0.0.10)
141
+ ruby2ruby (1.2.5)
142
+ ruby_parser (~> 2.0)
143
+ sexp_processor (~> 3.0)
144
+ ruby_parser (2.0.6)
145
+ sexp_processor (~> 3.0)
146
+ sexp_processor (3.0.5)
147
+ shoulda-matchers (1.0.0.beta2)
148
+ syntax (1.0.0)
149
+ thor (0.14.6)
150
+ treetop (1.4.9)
151
+ polyglot (>= 0.3.1)
152
+ tzinfo (0.3.27)
153
+
154
+ PLATFORMS
155
+ ruby
156
+
157
+ DEPENDENCIES
158
+ activerecord-nulldb-adapter
159
+ autotest
160
+ jeweler (~> 1.5.2)
161
+ metrical
162
+ rails (= 3.0.7)
163
+ rake (= 0.8.7)
164
+ rcov
165
+ rspec-rails
166
+ shoulda-matchers
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.2
1
+ 0.2.4
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{acts_as_price}
8
- s.version = "0.2.2"
8
+ s.version = "0.2.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jeroen van Ingen"]
12
- s.date = %q{2011-05-02}
12
+ s.date = %q{2011-06-03}
13
13
  s.description = %q{A specified database column acts as a price and creates on the fly methods like 'price' and 'price_in_cents'. For more information visit: http://github.com/jeroeningen/acts_as_price}
14
14
  s.email = %q{jeroeningen@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -17,6 +17,7 @@ Gem::Specification.new do |s|
17
17
  ]
18
18
  s.files = [
19
19
  "Gemfile",
20
+ "Gemfile.lock",
20
21
  "MIT-LICENSE",
21
22
  "README.rdoc",
22
23
  "Rakefile",
@@ -68,6 +69,7 @@ Gem::Specification.new do |s|
68
69
 
69
70
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
70
71
  s.add_runtime_dependency(%q<rails>, ["= 3.0.7"])
72
+ s.add_runtime_dependency(%q<rake>, ["= 0.8.7"])
71
73
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
72
74
  s.add_runtime_dependency(%q<rails>, ["= 3.0.7"])
73
75
  s.add_development_dependency(%q<rspec-rails>, ["= 2.5.0"])
@@ -78,6 +80,7 @@ Gem::Specification.new do |s|
78
80
  s.add_development_dependency(%q<activerecord-nulldb-adapter>, ["= 0.2.1"])
79
81
  else
80
82
  s.add_dependency(%q<rails>, ["= 3.0.7"])
83
+ s.add_dependency(%q<rake>, ["= 0.8.7"])
81
84
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
82
85
  s.add_dependency(%q<rails>, ["= 3.0.7"])
83
86
  s.add_dependency(%q<rspec-rails>, ["= 2.5.0"])
@@ -89,6 +92,7 @@ Gem::Specification.new do |s|
89
92
  end
90
93
  else
91
94
  s.add_dependency(%q<rails>, ["= 3.0.7"])
95
+ s.add_dependency(%q<rake>, ["= 0.8.7"])
92
96
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
93
97
  s.add_dependency(%q<rails>, ["= 3.0.7"])
94
98
  s.add_dependency(%q<rspec-rails>, ["= 2.5.0"])
@@ -29,13 +29,13 @@ module ActiveRecord
29
29
 
30
30
  #getters
31
31
  define_method(column_name) do
32
- if super.blank? or super == 0.0
32
+ if super().blank? or super() == 0.0
33
33
  ""
34
34
  else
35
35
  if comma
36
- return_val = sprintf("%.2f", super.to_f / 100).gsub(".", ",")
36
+ return_val = sprintf("%.2f", super().to_f / 100).gsub(".", ",")
37
37
  else
38
- return_val = sprintf("%.2f", super.to_f / 100)
38
+ return_val = sprintf("%.2f", super().to_f / 100)
39
39
  end
40
40
  return_val = currency ? "#{currency}. #{return_val}" : return_val
41
41
  return_val
@@ -45,9 +45,9 @@ module ActiveRecord
45
45
 
46
46
  define_method("price_in_cents") do
47
47
  if currency
48
- ((send column_name).gsub("#{currency}. ", "").gsub(",", ".").to_f * 100).to_s.to_i
48
+ ((send column_name).gsub("#{currency}. ", "").gsub(",", ".").to_f * 100).round
49
49
  else
50
- ((send column_name).gsub(",", ".").to_f * 100).to_s.to_i
50
+ ((send column_name).gsub(",", ".").to_f * 100).round
51
51
  end
52
52
  end
53
53
  alias_method "#{column_name}_in_cents", "price_in_cents"
@@ -20,6 +20,7 @@ module ActsAsPriceHelper
20
20
 
21
21
  #normal test for setter
22
22
  test_setter_in_cents "144", seperator
23
+
23
24
  if @acts_as_price_model.currency
24
25
  currency = @acts_as_price_model.currency
25
26
  test_setter_in_doubles "#{currency}. 1.41", seperator
@@ -30,6 +31,7 @@ module ActsAsPriceHelper
30
31
  test_setter_in_doubles "#{currency}. 1.5", seperator
31
32
  test_setter_in_doubles "#{currency}. 1.505", seperator
32
33
  test_setter_in_doubles "#{currency}. 1.504", seperator
34
+
33
35
  #test if 1,5 is returned as 1.50
34
36
  test_setter_in_doubles "#{currency}. 1,5", seperator
35
37
  test_setter_in_doubles "#{currency}. 1,505", seperator
@@ -100,7 +102,7 @@ module ActsAsPriceHelper
100
102
  @acts_as_price_model.send(getter).should == ""
101
103
  else
102
104
  if currency
103
- @acts_as_price_model.send(getter).should == currency + ". " + sprintf("%.2f", (double.gsub(",", ".").to_f + 0.001).to_s).gsub(".", seperator)
105
+ @acts_as_price_model.send(getter).should == currency + ". " + sprintf("%.2f", double.gsub(",", ".").to_f + 0.0001).gsub(".", seperator)
104
106
  else
105
107
  @acts_as_price_model.send(getter).should == sprintf("%.2f", double.gsub(",", ".").to_s).gsub(".", seperator)
106
108
  end
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_price
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
5
4
  prerelease: false
6
5
  segments:
7
6
  - 0
8
7
  - 2
9
- - 2
10
- version: 0.2.2
8
+ - 4
9
+ version: 0.2.4
11
10
  platform: ruby
12
11
  authors:
13
12
  - Jeroen van Ingen
@@ -15,154 +14,160 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2011-05-02 00:00:00 -07:00
17
+ date: 2011-06-03 00:00:00 +02:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
- type: :runtime
23
21
  name: rails
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
22
+ requirement: &id001 !ruby/object:Gem::Requirement
25
23
  none: false
26
24
  requirements:
27
25
  - - "="
28
26
  - !ruby/object:Gem::Version
29
- hash: 9
30
27
  segments:
31
28
  - 3
32
29
  - 0
33
30
  - 7
34
31
  version: 3.0.7
35
- requirement: *id001
32
+ type: :runtime
36
33
  prerelease: false
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: rake
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - "="
41
+ - !ruby/object:Gem::Version
42
+ segments:
43
+ - 0
44
+ - 8
45
+ - 7
46
+ version: 0.8.7
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: *id002
37
50
  - !ruby/object:Gem::Dependency
38
- type: :development
39
51
  name: jeweler
40
- version_requirements: &id002 !ruby/object:Gem::Requirement
52
+ requirement: &id003 !ruby/object:Gem::Requirement
41
53
  none: false
42
54
  requirements:
43
55
  - - ~>
44
56
  - !ruby/object:Gem::Version
45
- hash: 7
46
57
  segments:
47
58
  - 1
48
59
  - 5
49
60
  - 2
50
61
  version: 1.5.2
51
- requirement: *id002
62
+ type: :development
52
63
  prerelease: false
64
+ version_requirements: *id003
53
65
  - !ruby/object:Gem::Dependency
54
- type: :runtime
55
66
  name: rails
56
- version_requirements: &id003 !ruby/object:Gem::Requirement
67
+ requirement: &id004 !ruby/object:Gem::Requirement
57
68
  none: false
58
69
  requirements:
59
70
  - - "="
60
71
  - !ruby/object:Gem::Version
61
- hash: 9
62
72
  segments:
63
73
  - 3
64
74
  - 0
65
75
  - 7
66
76
  version: 3.0.7
67
- requirement: *id003
77
+ type: :runtime
68
78
  prerelease: false
79
+ version_requirements: *id004
69
80
  - !ruby/object:Gem::Dependency
70
- type: :development
71
81
  name: rspec-rails
72
- version_requirements: &id004 !ruby/object:Gem::Requirement
82
+ requirement: &id005 !ruby/object:Gem::Requirement
73
83
  none: false
74
84
  requirements:
75
85
  - - "="
76
86
  - !ruby/object:Gem::Version
77
- hash: 27
78
87
  segments:
79
88
  - 2
80
89
  - 5
81
90
  - 0
82
91
  version: 2.5.0
83
- requirement: *id004
92
+ type: :development
84
93
  prerelease: false
94
+ version_requirements: *id005
85
95
  - !ruby/object:Gem::Dependency
86
- type: :development
87
96
  name: shoulda-matchers
88
- version_requirements: &id005 !ruby/object:Gem::Requirement
97
+ requirement: &id006 !ruby/object:Gem::Requirement
89
98
  none: false
90
99
  requirements:
91
100
  - - "="
92
101
  - !ruby/object:Gem::Version
93
- hash: -1848230054
94
102
  segments:
95
103
  - 1
96
104
  - 0
97
105
  - 0
98
106
  - beta2
99
107
  version: 1.0.0.beta2
100
- requirement: *id005
108
+ type: :development
101
109
  prerelease: false
110
+ version_requirements: *id006
102
111
  - !ruby/object:Gem::Dependency
103
- type: :development
104
112
  name: autotest
105
- version_requirements: &id006 !ruby/object:Gem::Requirement
113
+ requirement: &id007 !ruby/object:Gem::Requirement
106
114
  none: false
107
115
  requirements:
108
116
  - - "="
109
117
  - !ruby/object:Gem::Version
110
- hash: 35
111
118
  segments:
112
119
  - 4
113
120
  - 4
114
121
  - 6
115
122
  version: 4.4.6
116
- requirement: *id006
123
+ type: :development
117
124
  prerelease: false
125
+ version_requirements: *id007
118
126
  - !ruby/object:Gem::Dependency
119
- type: :development
120
127
  name: rcov
121
- version_requirements: &id007 !ruby/object:Gem::Requirement
128
+ requirement: &id008 !ruby/object:Gem::Requirement
122
129
  none: false
123
130
  requirements:
124
131
  - - "="
125
132
  - !ruby/object:Gem::Version
126
- hash: 41
127
133
  segments:
128
134
  - 0
129
135
  - 9
130
136
  - 9
131
137
  version: 0.9.9
132
- requirement: *id007
138
+ type: :development
133
139
  prerelease: false
140
+ version_requirements: *id008
134
141
  - !ruby/object:Gem::Dependency
135
- type: :development
136
142
  name: metrical
137
- version_requirements: &id008 !ruby/object:Gem::Requirement
143
+ requirement: &id009 !ruby/object:Gem::Requirement
138
144
  none: false
139
145
  requirements:
140
146
  - - "="
141
147
  - !ruby/object:Gem::Version
142
- hash: 21
143
148
  segments:
144
149
  - 0
145
150
  - 0
146
151
  - 5
147
152
  version: 0.0.5
148
- requirement: *id008
153
+ type: :development
149
154
  prerelease: false
155
+ version_requirements: *id009
150
156
  - !ruby/object:Gem::Dependency
151
- type: :development
152
157
  name: activerecord-nulldb-adapter
153
- version_requirements: &id009 !ruby/object:Gem::Requirement
158
+ requirement: &id010 !ruby/object:Gem::Requirement
154
159
  none: false
155
160
  requirements:
156
161
  - - "="
157
162
  - !ruby/object:Gem::Version
158
- hash: 21
159
163
  segments:
160
164
  - 0
161
165
  - 2
162
166
  - 1
163
167
  version: 0.2.1
164
- requirement: *id009
168
+ type: :development
165
169
  prerelease: false
170
+ version_requirements: *id010
166
171
  description: "A specified database column acts as a price and creates on the fly methods like 'price' and 'price_in_cents'. For more information visit: http://github.com/jeroeningen/acts_as_price"
167
172
  email: jeroeningen@gmail.com
168
173
  executables: []
@@ -173,6 +178,7 @@ extra_rdoc_files:
173
178
  - README.rdoc
174
179
  files:
175
180
  - Gemfile
181
+ - Gemfile.lock
176
182
  - MIT-LICENSE
177
183
  - README.rdoc
178
184
  - Rakefile
@@ -217,7 +223,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
217
223
  requirements:
218
224
  - - ">="
219
225
  - !ruby/object:Gem::Version
220
- hash: 3
226
+ hash: 3917183429707775794
221
227
  segments:
222
228
  - 0
223
229
  version: "0"
@@ -226,7 +232,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
226
232
  requirements:
227
233
  - - ">="
228
234
  - !ruby/object:Gem::Version
229
- hash: 3
230
235
  segments:
231
236
  - 0
232
237
  version: "0"