momm 0.0.7 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +1 -0
  3. data/README.md +11 -8
  4. data/bin/momm +3 -1
  5. data/examples/rack_app/Gemfile +1 -0
  6. data/examples/rack_app/config.ru +3 -1
  7. data/lib/momm/memcached.rb +12 -4
  8. data/lib/momm/redis_store.rb +12 -4
  9. data/lib/momm/storage.rb +3 -7
  10. data/lib/momm/version.rb +1 -1
  11. data/lib/momm/web.rb +1 -1
  12. data/momm.gemspec +4 -4
  13. data/spec/momm/bridge_spec.rb +5 -5
  14. data/spec/momm/calculator_spec.rb +16 -16
  15. data/spec/momm/feeds/ecb_spec.rb +9 -9
  16. data/spec/momm/memcached_spec.rb +9 -5
  17. data/spec/momm/momm_spec.rb +10 -10
  18. data/spec/momm/redis_store_spec.rb +9 -7
  19. data/spec/momm/storage_spec.rb +8 -8
  20. data/spec/momm/version_spec.rb +2 -2
  21. data/spec/momm/web_spec.rb +4 -2
  22. data/spec/spec_helper.rb +5 -4
  23. metadata +46 -115
  24. data/examples/rails_app/.gitignore +0 -16
  25. data/examples/rails_app/Gemfile +0 -12
  26. data/examples/rails_app/README.rdoc +0 -28
  27. data/examples/rails_app/Rakefile +0 -6
  28. data/examples/rails_app/app/assets/images/.keep +0 -0
  29. data/examples/rails_app/app/assets/javascripts/application.js +0 -16
  30. data/examples/rails_app/app/assets/javascripts/pages.js +0 -2
  31. data/examples/rails_app/app/assets/stylesheets/application.css +0 -13
  32. data/examples/rails_app/app/assets/stylesheets/pages.css +0 -4
  33. data/examples/rails_app/app/controllers/application_controller.rb +0 -5
  34. data/examples/rails_app/app/controllers/concerns/.keep +0 -0
  35. data/examples/rails_app/app/controllers/pages_controller.rb +0 -4
  36. data/examples/rails_app/app/helpers/application_helper.rb +0 -2
  37. data/examples/rails_app/app/helpers/pages_helper.rb +0 -2
  38. data/examples/rails_app/app/mailers/.keep +0 -0
  39. data/examples/rails_app/app/models/.keep +0 -0
  40. data/examples/rails_app/app/models/concerns/.keep +0 -0
  41. data/examples/rails_app/app/views/layouts/application.html.erb +0 -14
  42. data/examples/rails_app/app/views/pages/say_hello.html.slim +0 -20
  43. data/examples/rails_app/bin/bundle +0 -3
  44. data/examples/rails_app/bin/rails +0 -4
  45. data/examples/rails_app/bin/rake +0 -4
  46. data/examples/rails_app/config.ru +0 -4
  47. data/examples/rails_app/config/application.rb +0 -28
  48. data/examples/rails_app/config/boot.rb +0 -4
  49. data/examples/rails_app/config/environment.rb +0 -5
  50. data/examples/rails_app/config/environments/development.rb +0 -26
  51. data/examples/rails_app/config/environments/production.rb +0 -80
  52. data/examples/rails_app/config/environments/test.rb +0 -36
  53. data/examples/rails_app/config/initializers/backtrace_silencers.rb +0 -7
  54. data/examples/rails_app/config/initializers/filter_parameter_logging.rb +0 -4
  55. data/examples/rails_app/config/initializers/inflections.rb +0 -16
  56. data/examples/rails_app/config/initializers/mime_types.rb +0 -5
  57. data/examples/rails_app/config/initializers/momm_initializer.rb +0 -3
  58. data/examples/rails_app/config/initializers/secret_token.rb +0 -12
  59. data/examples/rails_app/config/initializers/session_store.rb +0 -3
  60. data/examples/rails_app/config/initializers/wrap_parameters.rb +0 -9
  61. data/examples/rails_app/config/locales/en.yml +0 -23
  62. data/examples/rails_app/config/routes.rb +0 -7
  63. data/examples/rails_app/db/seeds.rb +0 -7
  64. data/examples/rails_app/lib/assets/.keep +0 -0
  65. data/examples/rails_app/lib/tasks/.keep +0 -0
  66. data/examples/rails_app/log/.keep +0 -0
  67. data/examples/rails_app/public/404.html +0 -58
  68. data/examples/rails_app/public/422.html +0 -58
  69. data/examples/rails_app/public/500.html +0 -57
  70. data/examples/rails_app/public/favicon.ico +0 -0
  71. data/examples/rails_app/public/robots.txt +0 -5
  72. data/examples/rails_app/vendor/assets/javascripts/.keep +0 -0
  73. data/examples/rails_app/vendor/assets/stylesheets/.keep +0 -0
@@ -3,22 +3,24 @@ require 'spec_helper'
3
3
  describe Momm::RedisStore do
4
4
  context 'default configurations' do
5
5
  it 'default options should be correct' do
6
- Momm::RedisStore::DEFAULT_OPTIONS.should == {
7
- host: "localhost", port: 6379, namespace: "momm"
8
- }
6
+ expect(Momm::RedisStore::DEFAULT_OPTIONS).to eq({
7
+ host: "localhost",
8
+ port: 6379,
9
+ namespace: "momm"
10
+ })
9
11
  end
10
12
  end
11
13
 
12
14
  context '#initialize' do
13
15
  it 'can be initialized without params passed in' do
14
16
  momm = Momm::RedisStore.new
15
- momm.client.should be_a(Redis::Namespace)
17
+ expect(momm.client).to be_a(Redis::Namespace)
16
18
  end
17
19
 
18
20
  it 'can be initialized' do
19
21
  momm = Momm::RedisStore.new host: "localhost",
20
22
  port: 6379, namespace: "momm"
21
- momm.client.should be_a(Redis::Namespace)
23
+ expect(momm.client).to be_a(Redis::Namespace)
22
24
  end
23
25
  end
24
26
 
@@ -29,9 +31,9 @@ describe Momm::RedisStore do
29
31
  money = rand(20)
30
32
 
31
33
  calc.set_rate :USD, money
32
- calc.get_rate(:USD).should == money
34
+ expect(calc.get_rate(:USD)).to eq money
33
35
 
34
36
  Momm.update!
35
37
  end
36
38
  end
37
- end
39
+ end
@@ -7,31 +7,31 @@ describe Momm::Storage do
7
7
  it "should apply to #client" do
8
8
  expect{
9
9
  storage.client
10
- }.to raise_error
10
+ }.to raise_error NotImplementedError
11
11
  end
12
12
 
13
13
  it "should apply to #set_rate" do
14
14
  expect{
15
- storage.set_rate
16
- }.to raise_error
15
+ storage.set_rate("GBP", "USD", 0.8)
16
+ }.to raise_error NotImplementedError
17
17
  end
18
18
 
19
19
  it "should apply to #get_rate" do
20
20
  expect{
21
- storage.get_rate
22
- }.to raise_error
21
+ storage.get_rate("GBP", "USD")
22
+ }.to raise_error NotImplementedError
23
23
  end
24
24
 
25
25
  it "should apply to #exchange_rate" do
26
26
  expect{
27
27
  storage.client
28
- }.to raise_error
28
+ }.to raise_error NotImplementedError
29
29
  end
30
30
 
31
31
  it "should apply to #exchange_rate" do
32
32
  expect{
33
33
  storage.client
34
- }.to raise_error
34
+ }.to raise_error NotImplementedError
35
35
  end
36
36
  end
37
- end
37
+ end
@@ -2,6 +2,6 @@ require 'spec_helper'
2
2
 
3
3
  describe 'momm version' do
4
4
  it 'should be correct' do
5
- Momm::VERSION.should == '0.0.7'
5
+ expect(Momm::VERSION).to eq '0.0.7'
6
6
  end
7
- end
7
+ end
@@ -19,10 +19,12 @@ describe Momm::Web do
19
19
 
20
20
  describe 'GET /query' do
21
21
  it 'should response' do
22
- get '/query', money: 12, from: "GBP", to: "USD", date: "2014-3-10"
22
+ get '/query', money: 12, from: "GBP", to: "USD", date: Date.today
23
23
 
24
24
  expect(last_response).to be_ok
25
- expect(last_response.body).to eq("19.98")
25
+ expect{
26
+ last_response.body.to_i
27
+ }.not_to raise_error
26
28
  end
27
29
  end
28
30
 
@@ -1,11 +1,12 @@
1
+ # Require store engine dependencies before running test
2
+ require "redis"
3
+ require "dalli"
4
+
1
5
  require "momm"
2
6
 
3
7
  RSpec.configure do |config|
4
- config.treat_symbols_as_metadata_keys_with_true_values = true
5
8
  config.run_all_when_everything_filtered = true
6
9
  config.filter_run :focus
7
10
 
8
11
  config.order = 'random'
9
-
10
- config.color_enabled = true
11
- end
12
+ end
metadata CHANGED
@@ -1,160 +1,141 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: momm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jingkai He
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-03-24 00:00:00.000000000 Z
11
+ date: 2016-03-14 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: redis
14
+ name: httparty
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: 3.0.6
19
+ version: 0.12.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
- version: 3.0.6
26
+ version: 0.12.0
30
27
  - !ruby/object:Gem::Dependency
31
- name: redis-namespace
28
+ name: json
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
- version: 1.3.2
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
- version: 1.3.2
40
+ version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
- name: dalli
42
+ name: redis
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
- version: 2.7.0
54
- type: :runtime
47
+ version: '0'
48
+ type: :development
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
- version: 2.7.0
54
+ version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
- name: httparty
56
+ name: dalli
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
- version: 0.12.0
70
- type: :runtime
61
+ version: '0'
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: 0.12.0
68
+ version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
- name: json
70
+ name: redis-namespace
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
- type: :runtime
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
82
  version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: rack-test
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - ">="
100
88
  - !ruby/object:Gem::Version
101
89
  version: '0'
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
96
  version: '0'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: rake
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
111
  - !ruby/object:Gem::Dependency
127
112
  name: sinatra
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - ">="
132
116
  - !ruby/object:Gem::Version
133
117
  version: '0'
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - ">="
140
123
  - !ruby/object:Gem::Version
141
124
  version: '0'
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: rspec
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ! '>='
129
+ - - '='
148
130
  - !ruby/object:Gem::Version
149
- version: '0'
131
+ version: 3.4.0
150
132
  type: :development
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ! '>='
136
+ - - '='
156
137
  - !ruby/object:Gem::Version
157
- version: '0'
138
+ version: 3.4.0
158
139
  description: A Currency Exchange Calculator
159
140
  email:
160
141
  - jaxihe@gmail.com
@@ -163,8 +144,9 @@ executables:
163
144
  extensions: []
164
145
  extra_rdoc_files: []
165
146
  files:
166
- - .gitignore
167
- - .travis.yml
147
+ - ".gitignore"
148
+ - ".rspec"
149
+ - ".travis.yml"
168
150
  - Gemfile
169
151
  - LICENSE.txt
170
152
  - README.md
@@ -173,56 +155,6 @@ files:
173
155
  - change_log.md
174
156
  - examples/rack_app/Gemfile
175
157
  - examples/rack_app/config.ru
176
- - examples/rails_app/.gitignore
177
- - examples/rails_app/Gemfile
178
- - examples/rails_app/README.rdoc
179
- - examples/rails_app/Rakefile
180
- - examples/rails_app/app/assets/images/.keep
181
- - examples/rails_app/app/assets/javascripts/application.js
182
- - examples/rails_app/app/assets/javascripts/pages.js
183
- - examples/rails_app/app/assets/stylesheets/application.css
184
- - examples/rails_app/app/assets/stylesheets/pages.css
185
- - examples/rails_app/app/controllers/application_controller.rb
186
- - examples/rails_app/app/controllers/concerns/.keep
187
- - examples/rails_app/app/controllers/pages_controller.rb
188
- - examples/rails_app/app/helpers/application_helper.rb
189
- - examples/rails_app/app/helpers/pages_helper.rb
190
- - examples/rails_app/app/mailers/.keep
191
- - examples/rails_app/app/models/.keep
192
- - examples/rails_app/app/models/concerns/.keep
193
- - examples/rails_app/app/views/layouts/application.html.erb
194
- - examples/rails_app/app/views/pages/say_hello.html.slim
195
- - examples/rails_app/bin/bundle
196
- - examples/rails_app/bin/rails
197
- - examples/rails_app/bin/rake
198
- - examples/rails_app/config.ru
199
- - examples/rails_app/config/application.rb
200
- - examples/rails_app/config/boot.rb
201
- - examples/rails_app/config/environment.rb
202
- - examples/rails_app/config/environments/development.rb
203
- - examples/rails_app/config/environments/production.rb
204
- - examples/rails_app/config/environments/test.rb
205
- - examples/rails_app/config/initializers/backtrace_silencers.rb
206
- - examples/rails_app/config/initializers/filter_parameter_logging.rb
207
- - examples/rails_app/config/initializers/inflections.rb
208
- - examples/rails_app/config/initializers/mime_types.rb
209
- - examples/rails_app/config/initializers/momm_initializer.rb
210
- - examples/rails_app/config/initializers/secret_token.rb
211
- - examples/rails_app/config/initializers/session_store.rb
212
- - examples/rails_app/config/initializers/wrap_parameters.rb
213
- - examples/rails_app/config/locales/en.yml
214
- - examples/rails_app/config/routes.rb
215
- - examples/rails_app/db/seeds.rb
216
- - examples/rails_app/lib/assets/.keep
217
- - examples/rails_app/lib/tasks/.keep
218
- - examples/rails_app/log/.keep
219
- - examples/rails_app/public/404.html
220
- - examples/rails_app/public/422.html
221
- - examples/rails_app/public/500.html
222
- - examples/rails_app/public/favicon.ico
223
- - examples/rails_app/public/robots.txt
224
- - examples/rails_app/vendor/assets/javascripts/.keep
225
- - examples/rails_app/vendor/assets/stylesheets/.keep
226
158
  - lib/momm.rb
227
159
  - lib/momm/bridge.rb
228
160
  - lib/momm/calculator.rb
@@ -250,27 +182,26 @@ files:
250
182
  homepage: https://github.com/jaxi/momm
251
183
  licenses:
252
184
  - MIT
185
+ metadata: {}
253
186
  post_install_message:
254
187
  rdoc_options: []
255
188
  require_paths:
256
189
  - lib
257
190
  required_ruby_version: !ruby/object:Gem::Requirement
258
- none: false
259
191
  requirements:
260
- - - ! '>='
192
+ - - ">="
261
193
  - !ruby/object:Gem::Version
262
194
  version: '0'
263
195
  required_rubygems_version: !ruby/object:Gem::Requirement
264
- none: false
265
196
  requirements:
266
- - - ! '>='
197
+ - - ">="
267
198
  - !ruby/object:Gem::Version
268
199
  version: '0'
269
200
  requirements: []
270
201
  rubyforge_project:
271
- rubygems_version: 1.8.23.2
202
+ rubygems_version: 2.2.3
272
203
  signing_key:
273
- specification_version: 3
204
+ specification_version: 4
274
205
  summary: A Currency Exchange Calculator
275
206
  test_files:
276
207
  - spec/momm/bridge_spec.rb
@@ -1,16 +0,0 @@
1
- # See https://help.github.com/articles/ignoring-files for more about ignoring files.
2
- #
3
- # If you find yourself ignoring temporary files generated by your text editor
4
- # or operating system, you probably want to add a global ignore instead:
5
- # git config --global core.excludesfile '~/.gitignore_global'
6
-
7
- # Ignore bundler config.
8
- /.bundle
9
-
10
- # Ignore the default SQLite database.
11
- /db/*.sqlite3
12
- /db/*.sqlite3-journal
13
-
14
- # Ignore all logfiles and tempfiles.
15
- /log/*.log
16
- /tmp
@@ -1,12 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'rails', '4.0.4'
4
-
5
- gem 'jquery-rails'
6
-
7
- gem 'momm', path: '../..'
8
-
9
- gem 'slim-rails'
10
-
11
- # Momm::Web dependency
12
- gem 'sinatra'